27

次のコードを使用して、Web サービスから返される PDF を base64 文字列としてレンダリングしています。

<html>
  <object data="data:application/pdf;base64,{!pdfStampingResponse.pdfBase64}" type="application/pdf" width="100%" class="internal">
    <param name="view" value="fitH" />            
  </object>
</html>

これはうまく機能しますが、ユーザーがファイルを保存しようとしたときにダウンロード ファイル名を設定したいと考えています。どういうわけか、実用的な解決策を見つけることができません。これを行う方法はありますか?

4

4 に答える 4

3

これを試してください

const FILE_NAME = 'myfile.pdf';
const file_header = ';headers=filename';

fetch('https:your-url/myfile.pdf?dl=0').then(r => r.blob())
.then(blob=>{
  const f = new FileReader();
  f.onload = () => myPdfViewer.src = f.result.replace(';', file_header + encodeURIComponent(FILE_NAME) + ';');
  f.readAsDataURL(blob);
  });

次に、id myPdfViewer を iframe に挿入します。お役に立てば幸いです。

于 2018-10-24T10:33:36.367 に答える
0

次のコード構文を使用できます

<object data="data/test.pdf" type="application/pdf" width="300" height="200">
  alt : <a href="data/test.pdf">test.pdf</a>
</object>

ここでこれを見つけました。

それが役に立てば幸い。

于 2015-10-27T10:39:33.130 に答える
0

download="yourfilename"アンカータグで使用します。

download 属性は、ユーザーがハイパーリンクをクリックしたときにターゲットがダウンロードされることを指定します。

PS: この属性は、href 属性が設定されている場合にのみ使用されます。

于 2018-02-27T18:50:40.603 に答える