Como instruir o Chrome a baixar PDF em vez de (pré) visualizar no navegador?

9

Tenho um arquivo PDF para download pelos usuários no meu site.

Existe uma maneira de instruir o Chrome a não exibir o PDF no navegador dos usuários quando o usuário clica no link do PDF, mas, em vez disso, faça o download do PDF na pasta de download dos usuários? Ou, pelo menos, instrua o Chrome a perguntar ao usuário se ele deseja visualizar o PDF no navegador ou fazer o download (em vez de apenas visualizar no navegador automaticamente)?

Obrigado :)

rassom
fonte
Obrigado :) Tentei a resposta mais bem avaliada aqui, mas não funciona :( wordpress.stackexchange.com/questions/5419/…
rassom
11
Eu acho que isso não funcionará no chrome, pois o chrome detecta o documento como pdf antes do htaccess carregar e interage com o navegador. portanto, o chrome o carregará como PDF e não acessará como ação de download.
Talvez algum javascript que encontre o link por meio de um ID CSS específico possa ser adicionado e adicione um atributo de download a ele ref w3schools.com/TAgs/att_a_download.asp . Se alguém aqui sabe javascript suficiente para fazê-lo, ajuda seria apreciada,
rassom
11
@rassom, qual servidor da web você está usando? O Content-Dispositioncabeçalho mencionado no link no primeiro comentário é o caminho certo para fazer isso.
heavyd
11
A disposição do conteúdo no .htaccess não funciona, já tentei.
Rassom

Respostas:

11

Você pode usar a downloadpropriedade no seu link (âncora) da seguinte forma:

<a href="some/path/somefile.pdf" download target="_blank">download PDF file</a>

Isso forçaria o download nos navegadores, que o suportam (Chrome, Firefox e Opera). No entanto, atualmente não é suportado no IE ou no Safari conforme este link

Fonte: /programming/3802510/force-to-open-save-as-popup-open-at-text-link-click-for-pdf-in-html

Kristian
fonte
11
Documentação para o atributo porque possui alguns recursos interessantes. É uma pena que o IE seja teimoso. w3schools.com/tags/att_a_download.asp
Também é tão ruim Chrome limita o atributo de mesmo domínio e mesma porta :-( no entanto, eles permitem que você baixar o arquivo via "Salvar como"
user1156544
2

Não tenho certeza se é possível através de código personalizado no site. Tanto quanto sei, depende totalmente da configuração do usuário no navegador Chrome.

Basicamente, quando você digita: chrome: // plugins / , ele lista os plugins chrome e, se o usuário desativar o plug-in chamado: Chrome PDF Viewer , somente o chrome solicitará o download do PDF, caso contrário, o PDF será aberto automaticamente.


fonte
Obrigado, mas não responde à pergunta sobre como eu, como webmaster, posso garantir que esse seja o comportamento dos usuários que não definiram essa configuração de preferências do Chrome. Mas agradável de você resposta :-)
rassom
1

Isso pode ser feito simplesmente ao invés de clicar no arquivo PDF, clique com o botão direito do mouse e selecione "Salvar link como". O chrome começará a baixar o arquivo PDF e verifique o formato do arquivo antes de salvar o endereço do link, geralmente seria .pdf, mas se não, então escreva manualmente .pdf depois dele.

Chirag
fonte
Obrigado, mas não responde à pergunta sobre como eu, como webmaster, posso garantir que esse seja o comportamento dos usuários que não definiram essa configuração de preferências do Chrome. Mas agradável de você resposta :-)
rassom