Как да направите PDF файла сваляем в HTML връзка?
Давам линк към pdf файл на моята уебстраница за изтегляне, както по-долу
<a href="myfile.pdf">Download Brochure</a>
Проблемът е, че когато потребителят щракне върху тази връзка, тогава
- Ако потребителят е инсталирал Adobe Acrobat, тогава файлът се отваря в същия прозорец на браузъра в Adobe Reader.
- Ако Adobe Acrobat не е инсталиран, тогава на потребителя се появява изскачащ прозорец за изтегляне на файла.
Но искам винаги да се появява изскачащ прозорец за изтегляне на файла, независимо дали е инсталиран "Adobe Acrobat" или не.
Моля, кажете ми как мога да направя това?
119
3
Вместо да поставяте връзка към .PDF файла, направете нещо подобно на
което извежда персонализирано заглавие, отваря PDF файла (двоично безопасно) и отпечатва данните в браузъра на потребителя, след което той може да избере да запази PDF файла въпреки настройките на браузъра си. PDF_server.php трябва да изглежда по следния начин:
PS: и очевидно извършете някои проверки за нормалност на променливата "file", за да предотвратите кражбата на вашите файлове, като например не приемайте файлови разширения, не допускайте наклонени черти, добавете .pdf към стойността
Това е ключът:
При изпращане на PDF файл се изпраща Content-type application/x-pdf-document или application/pdf. Adobe Reader обикновено задава обслужващ модул за този MIME тип, така че браузърът ще предаде документа на Adobe Reader, когато се получи някой от PDF MIME типовете.
В приложение на Ruby on Rails (особено с помощта на нещо като драгоценния камък Prawn и плъгина Prawnto Rails) можете да постигнете това малко по-просто, отколкото с пълен скрипт (като предишния пример с PHP).
В контролера си:
Частта render :layout => false указва на браузъра да отвори съобщението "Искате ли да изтеглите този файл? ", вместо да се опита да визуализира PDF файла. След това ще можете нормално да поставите връзка към файла: http://mysite.com/myawesomepdf.pdf