JavaScriptでPDFファイルのタイトル、作成者などの文書プロパティと初期表示設定を変更する
JavaScriptでPDFファイルの文書プロパティと表示設定を変更するサンプルです。JSのライブラリはオープンソースの「pdf-designer.js」を使用します。
PDFの文書プロパティと表示設定
全ての文書情報を変更して表示設定をサムネイルにします。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script src="pdf-designer.js" type="text/javascript"></script> <script type="text/javascript"> var Analyst = null; function onChangeFile(event) { var reader = new FileReader(); var file = event.target.files; document.getElementById("errmsg").innerHTML = ''; reader.onload = function (event) { var Stream = new Uint8Array(reader.result); Analyst = new TPDFAnalyst(); try { Analyst.LoadFromStream(Stream); if (Analyst.Encrypt) { document.getElementById("p1").innerHTML = 'PDFファイル - 未対応'; document.getElementById("errmsg").innerHTML = '暗号化されているファイルには対応していません。'; } else { document.getElementById("p1").innerHTML = 'PDFファイル - [' + Analyst.PageCount + 'ページ / PDF' + Analyst.Version + ']'; } } catch (e) { Analyst = null; document.getElementById("p1").innerHTML = 'PDFファイル - 未対応'; document.getElementById("errmsg").innerHTML = 'このファイルは未対応です。'; } } reader.readAsArrayBuffer(file[0]); } function run() { var PDFInfoMaker = new TPDFInfoMaker(); if (Analyst != null) { try { // 文書情報 PDFInfoMaker.Info.Title = 'タイトル'; PDFInfoMaker.Info.Subject = 'サブタイトル'; PDFInfoMaker.Info.Author = '作成者'; PDFInfoMaker.Info.Keywords = 'キーワード'; PDFInfoMaker.Info.Creator = 'アプリケーション'; PDFInfoMaker.Info.Producer = 'PDF変換'; PDFInfoMaker.Info.CreationDate = PDF_GetDateTime_Now(); PDFInfoMaker.Info.ModDate = PDF_GetDateTime_Now(); // 表示設定(サムネイル) PDFInfoMaker.View.PageMode = TPDFPageMode.pmUseThumbs; PDFInfoMaker.SaveToFile(PDF_GetDateTime_Now() + '.pdf', Analyst); } catch (e) { Analyst[0] = null; Analyst[1] = null; document.getElementById("errmsg").innerHTML = 'PDFファイルの変換に失敗しました。 '; } } else { document.getElementById("errmsg").innerHTML = 'ファイルを選択して下さい。'; } } </script> </head> <body> <h1>PDFの文書プロパティと表示設定</h1> <hr> <p>全ての文書プロパティを変更して表示設定をサムネイルにします。</p> <p id="errmsg" style="color:red;"></p> <p id="p1"></p> <input type="file" id="inputfile1" accept="application/pdf" onchange="onChangeFile(event)"><br> <br> <br> <br> <button id="run" style="width:200px;height:30px;" onclick="run();">開始</button> </body> </html>
対応しているファイル
「Microsoft Office、OpenOffice、Chrome」などで作成されたPDFファイルです。形式で言いますとPDF1.4形式(ISO 19005-1など)に準拠しているファイルです。「PDFの純正ツール」で作成したPDF1.5形式以降のファイルは基本的に対応していません。但し、PDF1.5形式以降のファイルでも内部的にPDF1.4形式ならば読み込めます。
スポンサーリンク
関連記事
公開日:2015年12月30日
記事NO:01674