簡體   English   中英

每次我使用 Grapecity PDF 查看器時都會“丟失 PDF”

[英]“Missing PDF” every time I use Grapecity PDF Viewer

我正在構建一個應用程序,它將在服務器上具有交互式 PDF 表單(在 HTML、CSS、JS 中)。 我一直在嘗試使用 Grapecity PDF 查看器,但無濟於事。 我使用以下資源將文檔跟蹤到 T : one , two , three

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, shrink-to-fit=no">
    <meta name="theme-color" content="#000000">
    <title>GC Viewer Demo | PDF Plugin</title>
    <link rel="stylesheet" href="https://cdn.materialdesignicons.com/2.8.94/css/materialdesignicons.min.css">
    <script>
        function loadPdfViewer(selector) {
            var viewer = new GcPdfViewer(selector, { renderInteractiveForms: true });
            viewer.addDefaultPanels();
            viewer.open("HelloWorld.pdf");
        }
    </script>
  </head>
  <body onload="loadPdfViewer('#root')">
    <div id="root"></div>
    <script type="text/javascript" src="gcpdfviewer.js"></script>
  </body>
</html>

我目前在與上述 index.html 相同的文件夾中有“HelloWorld.pdf”和 gcpdfviewer javascripts,但每次我在瀏覽器中測試代碼時,PDF 查看器會加載,但 ZBCD1B686017759B1DFCFF0 不會給我一個錯誤聲明“缺少 PDF”。

這真的讓我很困擾,因為我認為 PDF 正是它應該在的地方。

我目前沒有使用許可證密鑰,但文檔看起來好像我不需要一個。 也許這就是問題所在。

有任何想法嗎?

編輯 - 以下是 Chrome 中的控制台錯誤:

The pdf worker has been disabled. Note, rendering PDF in foreground thread can slow pdf viewer performance.
ce @ gcpdfviewer.js:1
index.html:1 Access to XMLHttpRequest at 'file:///C:/HelloWorld.pdf' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
HelloWorld.pdf:1 Failed to load resource: net::ERR_FAILED
index.html:1 Uncaught (in promise) V

感謝您使用 GCPDF 查看器。 文件名是否完全相同,它可能是區分大小寫的操作系統? 您能否在瀏覽器網絡選項卡中查看要檢索 PDF 文件的請求,它是否在您放置文件的同一位置查找。 您正在運行哪個服務器軟件? 它是否為 PDF 文件提供服務?

GrapeCity PDF 查看器團隊

http://www.grapecity.com

首先,問題不是因為非許可證版本。 出現此問題的原因是您嘗試使用文件系統在本地執行示例。 為了克服這個問題,您應該將應用程序托管在本地服務器上,並且 Pdf 將加載到 PdfViewer 中。 在 PdfViewer 中加載 Pdf 時,有 XMLHttpRequest 用於檢查原點。 在文件系統的情況下,這是 null。 因此,在訪問文件時拋出錯誤。 這是配置 PdfViewer 的文檔鏈接: https://www.grapecity.com/documents-api-pdf/docs/online/view-pdf.html

問候,

馬尼什·古普塔

As stated earlier, for security reasons, it is not possible to access files on your local filesystem via JavaScript, you need to set up a web server and open PDF files using the web server url.

但是如果你真的想這樣做,還有另一種解決方法——在禁用 web 安全的情況下啟動 Chrome,然后從本地文件系統打開 index.html 頁面,例如:

"c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="C:/temp/CustomChromeSession" --disable-web-security "file:///C:/temp/gcpdfviewer-test/index.html"

請注意,出於安全原因,不建議使用此解決方法,瀏覽器開發人員可以稍后禁用此方法。

這是它如何工作的屏幕截圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM