pdf.js初期化時に指定ページが表示され、デフォルトページが表示されます

1407 ワード

pdfを使用する.jsでは、pdfをプレビューした後、例えば今8ページ目にあるか、再び開いたときに8ページ目にあるか、最初のページからロードする必要があるかという問題に遭遇しました.あるいは、あるページに直接ジャンプする必要があるかもしれません.いくつかの資料を調べてみると、提供された案が多く、使いやすいものが一つもなく、私が不適切に使っている可能性もあります.どうせ失敗に終わったのです.最初は直接コードを読むことにして、ソースコードでこの問題を解決することにしましたが、コード量は少し大きいですね.別の方法を探すしかありません.その後、ブラウザを閉じるときにpdfを再開するか、離れたページからロードするかを発見しました.だから、デフォルトの構成はlocalStorageに保存すべきだと推測しました.やはりviewです.jsで設定が見つかりましたsetItem('pdfjs.history', databaseStr).
印刷して保存した内容は以下の通りです.
{"files":[{"fingerprint":"57f1f29cbad323c87a7921391211253d","sidebarView":0,"page":4,"zoom":"auto","scrollLeft":-17,"scrollTop":752,"rotation":0}]}

OK、今から問題を解決します.

1.展示トップページ


開くたびにpdfのトップページを表示したい場合は、viewに直接コメントします.jsのlocalStorage.setItem('pdfjs.history',databaseStr)でいいです.

2.ジャンプ指定ページ


異なるページ番号をロードしたい場合はviewに直接アクセスしてください.htmlに次のコードを追加します.
if(localStorage.getItem('pdfjs.history')){
    if(typeof JSON.parse(localStorage.getItem('pdfjs.history')) === 'object' ){
	    var history = JSON.parse(localStorage.getItem('pdfjs.history'));
		if(history.files && history.files[0]){
            //       
           this.database.files[0].page = 6;
        }
	    localStorage.setItem('pdfjs.history',JSON.stringify(history));
    }
}