2017-01-16 498 views
1

我使用PDFTron創建一個PDF閱讀器,我試圖打開已加密的密碼「test」的PDF文件。我正在嘗試使用戶不必在密碼對話框中輸入密碼,如下所示。相反,我想通過代碼本身的「測試」,然後打開文檔。我以不同的方式處理查看器的安全性,所以在代碼中傳遞密碼並不是問題。我已經在網上看過,像下面一樣嘗試過,但它不起作用,只是顯示對話框正常。PDFTron解密PDF使用密碼硬編碼

Attempt

PDF Tron Password Dialog screen

感謝

回答

0

您可以添加以下代碼config.js加載PDF文檔用密碼瞬間。

$(document).on('viewerLoaded', function() { 
    readerControl.getPassword = function(callback) { 
    callback('enter password here'); 
    }; 
}); 
+0

我結束了在PDFReaderControl.js傳遞代碼來處理來自的DocumentViewer密碼請求的密碼,然後使用的document.getElementById(「pass_ok_button」)點擊()。運行良好。這樣做,這樣我想有對話框仍然出現,然後自動再次關閉,但將不會出現,這正是我想要的機會:) –

+0

我要紀念這個作爲答案雖然我沒有決心它的理由略有不同,因爲這是正確的,並會按照我的要求去做。 –

1

要解決這個問題,請按照瑞恩的答案。不過,如果你仍然有問題,我做的方式是以下幾點:

buttons: { 
      'OK': {click: function() { 
      if (!finishedPassword) { 
        tryingPassword = true; 
        passwordCallback("PUT YOUR PASSWORD HERE"); 
       } 
        $(this).dialog('close'); 
       }, 
        id: 'pass_ok_button', 
        text: 'OK' 
       }, 
      'Cancel': function() { 
        $(this).dialog('close'); 
       } 
     } 

轉到PDFReaderControl.js,發現上面的代碼(搜索passwordCallback或按鈕,你會看到這段代碼)。 passwordCallback的值更改您的密碼,然後:

++(me.passwordTries); 
document.getElementById("pass_ok_button").click(); 

找到行++(me.passwordTries);並在下一行粘貼pass_ok_button的click函數,與上面相同。

而且現在的對話框不應出現,密碼會自動由程序來提供。