2013-01-02 46 views
1

在文档中找不到接下来要做的事情。手动调用PDFJS函数。在PDFView.open渲染后调用什么函数

呼叫:

PDFView.open('/MyPDFs/Pdf1.pdf', 'auto', null) 

我能看到空白页,装载机,也是文件得到我的PDF页面的数量。

唯一缺少的就是渲染。 有人知道我应该接下来打电话吗? 感谢

+1

你能解释“我能看到”吗?你怎么看到没有被渲染的东西? SSCCE会很有帮助。 – LarsH

+0

@LarsH你有没有使用过PDFJS?我可以看到白页,但没有打印内容。只是每个白页中心的加载图片。那就是我得到的。任何想法? –

+0

第一个问题 - 一点点。但令人惊讶的是,通过第二双眼睛看文档的频率,你可以帮助别人。第二个问题 - 不,不知道。在我看来,这不是后来调用另一个函数的问题,但我不知道如何解决这个问题。你看过https://github.com/mozilla/pdf.js/issues/1507 – LarsH

回答

0
$(document).ready(function() { 
    PDFView.initialize(); 

    var params = PDFView.parseQueryString(document.location.search.substring(1)); 

    //#if !(FIREFOX || MOZCENTRAL) 
    var file = params.file || DEFAULT_URL; 
    //#else 
    //var file = window.location.toString() 
    //#endif 

    //#if !(FIREFOX || MOZCENTRAL) 
    if (!window.File || !window.FileReader || !window.FileList || !window.Blob) { 
     document.getElementById('openFile').setAttribute('hidden', 'true'); 
    } else { 
     document.getElementById('fileInput').value = null; 
    } 
    //#else 
    //document.getElementById('openFile').setAttribute('hidden', 'true'); 
    //#endif 

    // Special debugging flags in the hash section of the URL. 
    var hash = document.location.hash.substring(1); 
    var hashParams = PDFView.parseQueryString(hash); 

    if ('disableWorker' in hashParams) 
     PDFJS.disableWorker = (hashParams['disableWorker'] === 'true'); 

    //#if !(FIREFOX || MOZCENTRAL) 
    var locale = navigator.language; 
    if ('locale' in hashParams) 
     locale = hashParams['locale']; 
    mozL10n.setLanguage(locale); 
    //#endif 
    if ('textLayer' in hashParams) { 
     switch (hashParams['textLayer']) { 
      case 'off': 
       PDFJS.disableTextLayer = true; 
       break; 
      case 'visible': 
      case 'shadow': 
      case 'hover': 
       var viewer = document.getElementById('viewer'); 
       viewer.classList.add('textLayer-' + hashParams['textLayer']); 
       break; 
     } 
    } 

    //#if !(FIREFOX || MOZCENTRAL) 
    if ('pdfBug' in hashParams) { 
     //#else 
     //if ('pdfBug' in hashParams && FirefoxCom.requestSync('pdfBugEnabled')) { 
     //#endif 
     PDFJS.pdfBug = true; 
     var pdfBug = hashParams['pdfBug']; 
     var enabled = pdfBug.split(','); 
     PDFBug.enable(enabled); 
     PDFBug.init(); 
    } 

    if (!PDFView.supportsPrinting) { 
     document.getElementById('print').classList.add('hidden'); 
    } 

    if (!PDFView.supportsFullscreen) { 
     document.getElementById('fullscreen').classList.add('hidden'); 
    } 

    if (PDFView.supportsIntegratedFind) { 
     document.querySelector('#viewFind').classList.add('hidden'); 
    } 

    // Listen for warnings to trigger the fallback UI. Errors should be caught 
    // and call PDFView.error() so we don't need to listen for those. 
    PDFJS.LogManager.addLogger({ 
     warn: function() { 
      PDFView.fallback(); 
     } 
    }); 

    var mainContainer = document.getElementById('mainContainer'); 
    var outerContainer = document.getElementById('outerContainer'); 
    mainContainer.addEventListener('transitionend', function (e) { 
     if (e.target == mainContainer) { 
      var event = document.createEvent('UIEvents'); 
      event.initUIEvent('resize', false, false, window, 0); 
      window.dispatchEvent(event); 
      outerContainer.classList.remove('sidebarMoving'); 
     } 
    }, true); 

    document.getElementById('sidebarToggle').addEventListener('click', 
     function() { 
      this.classList.toggle('toggled'); 
      outerContainer.classList.add('sidebarMoving'); 
      outerContainer.classList.toggle('sidebarOpen'); 
      PDFView.sidebarOpen = outerContainer.classList.contains('sidebarOpen'); 
      PDFView.renderHighestPriority(); 
     }); 

    document.getElementById('viewThumbnail').addEventListener('click', 
     function() { 
      PDFView.switchSidebarView('thumbs'); 
     }); 

    document.getElementById('viewOutline').addEventListener('click', 
     function() { 
      PDFView.switchSidebarView('outline'); 
     }); 

    document.getElementById('previous').addEventListener('click', 
     function() { 
      PDFView.page--; 
     }); 

    document.getElementById('next').addEventListener('click', 
     function() { 
      PDFView.page++; 
     }); 

    document.querySelector('.zoomIn').addEventListener('click', 
     function() { 
      PDFView.zoomIn(); 
     }); 

    document.querySelector('.zoomOut').addEventListener('click', 
     function() { 
      PDFView.zoomOut(); 
     }); 

    document.getElementById('fullscreen').addEventListener('click', 
     function() { 
      PDFView.fullscreen(); 
     }); 

    document.getElementById('openFile').addEventListener('click', 
     function() { 
      document.getElementById('fileInput').click(); 
     }); 

    document.getElementById('print').addEventListener('click', 
     function() { 
      window.print(); 
     }); 

    document.getElementById('download').addEventListener('click', 
     function() { 
      PDFView.download(); 
     }); 

    document.getElementById('pageNumber').addEventListener('change', 
     function() { 
      PDFView.page = this.value; 
     }); 

    document.getElementById('scaleSelect').addEventListener('change', 
     function() { 
      PDFView.parseScale(this.value); 
     }); 

    document.getElementById('first_page').addEventListener('click', 
     function() { 
      PDFView.page = 1; 
     }); 

    document.getElementById('last_page').addEventListener('click', 
     function() { 
      PDFView.page = PDFView.pdfDocument.numPages; 
     }); 

    document.getElementById('page_rotate_ccw').addEventListener('click', 
     function() { 
      PDFView.rotatePages(-90); 
     }); 

    document.getElementById('page_rotate_cw').addEventListener('click', 
     function() { 
      PDFView.rotatePages(90); 
     }); 

    //#if (FIREFOX || MOZCENTRAL) 
    //if (FirefoxCom.requestSync('getLoadingType') == 'passive') { 
    // PDFView.setTitleUsingUrl(file); 
    // PDFView.initPassiveLoading(); 
    // return; 
    //} 
    //#endif 

    //#if !B2G 

    PDFView.open(file, 0); 
    //#endif 
}); 

系统必须首先初始化PDFView.open调用之前!谢谢

0

在viewer.js中,我在文档下载后添加了对updateViewarea()的调用。

... PDFJS.getDocument(parameters).then(
    function getDocumentCallback(pdfDocument) { 
    self.load(pdfDocument, scale); 
    self.loading = false; 
    updateViewarea(); 
    }, ...