3 回答

TA貢獻2019條經(jīng)驗 獲得超9個贊
我有完全相同的問題。我注意到一些超過 1MB 的 PDF 無法加載。
需要將 Base64 字符串更改為 BLOB。然后創(chuàng)建一個用于 iframe src 的 URL。
這是代碼:
base64PDFToBlobUrl( base64 ) {
? const binStr = atob( base64 );
? const len = binStr.length;
? const arr = new Uint8Array(len);
? for (let i = 0; i < len; i++) {
? ? arr[ i ] = binStr.charCodeAt( i );
? }
? const blob =? new Blob( [ arr ], { type: 'application/pdf' } );
? const url = URL.createObjectURL( blob );
? return url;
}
這將返回一個 url,您可以將其放入 iframe、嵌入或對象 src 中。這樣,您仍然可以在頁面中加載 PDF,而無需在其他選項卡中打開它。

TA貢獻1868條經(jīng)驗 獲得超4個贊
您可以使用 Mozilla 編寫的 JS 渲染器,而不是使用瀏覽器原生的 PDF 渲染器。
ViewerJS為此提供了一個很好的界面,如果您想將其全尺寸嵌入到頁面中,那么您可以將其放置在 iframe 中并使用iFrame-resizer進行控制。
- 3 回答
- 0 關注
- 338 瀏覽
添加回答
舉報