PDF dosyasını HTML bağlantısında nasıl indirilebilir hale getirebilirim?
İndirmek için web sayfamda aşağıdaki gibi bir pdf dosyasının bağlantısını veriyorum
<a href="myfile.pdf">Download Brochure</a>
Sorun, kullanıcı bu bağlantıya tıkladığında
- Kullanıcı Adobe Acrobat'ı yüklediyse, dosyayı Adobe Reader'da aynı tarayıcı penceresinde açar.
- Adobe Acrobat yüklü değilse, dosyayı indirmek için kullanıcıya açılır.
Ancak, "Adobe acrobat" yüklü olup olmadığına bakılmaksızın, kullanıcıya her zaman indirme için açılmasını istiyorum.
Lütfen bana bunu nasıl yapabileceğimi söyleyin?
119
3
.PDF dosyasına bağlantı vermek yerine şöyle bir şey yapın
Özel bir başlık çıkarır, PDF'yi açar (ikili güvenli) ve verileri kullanıcının tarayıcısına yazdırır, ardından tarayıcı ayarlarına rağmen PDF'yi kaydetmeyi seçebilirler. pdf_server.php bu şekilde görünmelidir:
Not: ve tabii ki insanların dosyalarınızı çalmasını önlemek için "file" değişkeninde dosya uzantılarını kabul etme, eğik çizgileri reddetme, değere .pdf ekleme gibi bazı akıl sağlığı kontrolleri yapın
Anahtar bu:
PDF dosyası gönderilirken content-type application/x-pdf-document veya application/pdf gönderilir. Adobe Reader genellikle bu MIME türü için işleyiciyi ayarlar, böylece PDF MIME türlerinden herhangi biri alındığında tarayıcı belgeyi Adobe Reader'a iletir.
Bir Ruby on Rails uygulamasında (özellikle Prawn gem ve Prawnto Rails eklentisi gibi bir şeyle), bunu tam bir betikten (önceki PHP örneği gibi) biraz daha basit bir şekilde gerçekleştirebilirsiniz.
Kontrolörünüzde:
render :layout => false kısmı tarayıcıya PDF'yi oluşturmaya çalışmak yerine "Bu dosyayı indirmek ister misiniz? " istemini açmasını söyler. Böylece dosyaya normal şekilde bağlantı verebilirsiniz: http://mysite.com/myawesomepdf.pdf