LoginSignup
1
1

More than 3 years have passed since last update.

Javascript で PDFのページ数を取得するだけの処理(PDF.js)

Posted at

Javascript で PDFのページ数を取得するだけの処理(PDF.js)

    function fToBase64Convert(file) {
        return new Promise((resolve, reject)=>{
            const reader = new FileReader();
            reader.onload = () => {
                resolve(reader.result);
            }
            reader.onerror = reject;
            reader.readAsArrayBuffer(file);
        });
    }

    function getPdfPageNums(file){
        return new Promise(async(resolve, reject)=>{
            try{
                pdfjsLib.GlobalWorkerOptions.workerSrc ="https://cdn.jsdelivr.net/npm/pdfjs-dist@2.7.570/build/pdf.worker.min.js";
                var base64FObj = await fToBase64Convert(file);
                var pdfobj = pdfjsLib.getDocument({data: base64FObj });
                pdfobj.promise.then(function(pdf) {
                    resolve(pdf.numPages);
                });
            }catch(e){
                resolve(-1);
            }
        });
    }

    var pdfPageNums = await getPdfPageNums(ファイルオブジェクト);
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1