在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ Electron如何打印PDF文檔?

Electron如何打印PDF文檔?

需求是動(dòng)態(tài)給定網(wǎng)絡(luò)上的PDF資源,Electron實(shí)現(xiàn)預(yù)覽打印和不預(yù)覽直接打印,目前兩種方法的實(shí)現(xiàn)基本相同區(qū)別只是顯示不顯示窗口及BrowserWindow的show屬性不同
function print()
{

if(printWindow)
{
   printWindow.webContents.print({silent: true, printBackground: true});
}

}
printWindow = new BrowserWindow({show: true,width: 800, height: 800,'webPreferences':{'plugins':true}});
//pdfUrl是網(wǎng)絡(luò)PDF文件的地址
printWindow.loadURL(pdfUrl);
printWindow.setMenu(null);
printWindow.webContents.on('did-finish-load', () => {

   // 設(shè)置定時(shí)器
   setTimeout(print,3000);
});

遇到的問(wèn)題
(1)打印需要在顯示出PDF之后操作,否者打印出來(lái)的是空白,測(cè)試發(fā)現(xiàn)'did-finish-load'事件執(zhí)行時(shí)PDF文檔并沒(méi)有加載完,所以我使用的是定時(shí)器但是網(wǎng)路資源PDF的大小和網(wǎng)速都會(huì)影響PDF加載的時(shí)間這里定時(shí)器使用固定值太小的話(huà)有時(shí)加載不全,太大的話(huà)用戶(hù)體驗(yàn)不好,有沒(méi)有什么方法可以知道PDF文檔是否加載完成。
(2)PDF加載完成后,打印的時(shí)候必須點(diǎn)擊下顯示窗口的PDF的中部,否者打印出來(lái)文件會(huì)包含PDF的頁(yè)眉頁(yè)腳當(dāng)窗口顯示不全PDF的話(huà)分頁(yè)和顯示也會(huì)出現(xiàn)問(wèn)題
下圖是不點(diǎn)擊PDF的中部,出現(xiàn)的錯(cuò)誤打印結(jié)果,有沒(méi)有大神幫看下如何解決上面的兩問(wèn)題
圖片描述

回答
編輯回答
做不到

第一個(gè)問(wèn)題可以先下截下來(lái),再打印。
第二個(gè)問(wèn)題我回去試試

2018年3月10日 18:13