[JavaScript]全ページに『しおり』を追加する
Acrobat standardやprofessional でしおりの作成をプログラムできますか?
https://forums.adobe.com/message/8732930
に
反応
しかし…Adobe『フォーラム』の中の人達のルールってどうなん?
サポートしません!って…わざわざ言わんでも…と思うのですが
電話サポートでフォーラムで聞いてと言うんなら
せめてStd版でのjavascriptのサポートの有無ぐらい……ねぇ…と…
さて
『フォルダレベル』のスクリプトになります。
インストール先は11の場合は
/Users/ユーザー名/Library/Application Support/Adobe/Acrobat/11.0/JavaScripts
DCなら
/Users/ユーザー名/Library/Application Support/Adobe/Acrobat/DC/JavaScripts
※しおりにJavascriptを使うのは個人的には良くないと思っています。
利用者のセキュリティ設定等に依存がありますので、普通のしおりにした方が良いと思います。
こんな感じのPDFに
スクリプトを実行する事で
しおりを追加します
ソースはこちら
https://github.com/force4u/SetBookmarkAllPage.js/blob/master/SetBookmarkAllPage.js
---------ここから
//
//SetBookmarkAllPage
//20160507 v1
//各ページへのしおりを追加します
//Adobe Reader 11 OSX 10.6.8 にて確認
//インストール先は
//ディスク名/Users/ユーザー名/Library/Application Support/Adobe/Acrobat/11.0/JavaScripts
//ダウンロード後に文字コードをUTF16に変換してからインストールする事
//
//メニュー本体
function SetBookmarkAllPage(){
//まずはコンソール(デバッガー)を出さないと
//結果が見れませんので出しておきます
console.show();
//最初のページに移動
this.pageNum = 0;
//ページのカウント用の数値の初期化
var numPageCnt = 0;
//全ページ数を取得
var numAllPageCnt = this.numPages ;
//最後のページに移動する
this.pageNum = +numAllPageCnt;
//繰り返しの始まり
while (+numAllPageCnt >= 0) {
//ページ番号を定義(1ページ目が0なので1足す)
var theNowPageNum = this.pageNum + 1;
//しおりに指定する移動先としてのページ番号
var theGotoPageNum = this.pageNum;
//しおりに設定するスクリプトを定義
var theAction = "this.pageNum = " + theGotoPageNum + ";";
//しおりを追加する
this.bookmarkRoot.createChild(theNowPageNum + "ページ", theAction);
//前ページへ移動する
var numAllPageCnt = +theGotoPageNum - 1;
//ページカウントをカウントアップ
this.pageNum = +numAllPageCnt;
//繰り返しの終わり
}
//処理の終わり
}
///拡張メニュー部
app.addToolButton({
cName: "SetBookmarkAllPage",
cParent: "Bookmark",
cExec: "SetBookmarkAllPage()",
cEnable: "event.rc = true",
cMarked: "event.rc = false",
cTooltext: "全ページにブックマークを追加する",
nPos: -1,
cLabel: "全ページにブックマークを追加する"
});
---------ここまで
スクリプト本体
「SetBookmarkAllPage.js.zip」をダウンロード
元PDF
「sample12page.pdf」をダウンロード
しおり追加済PDF
「sample12pageAddBookmark.pdf」をダウンロード
| 固定リンク
「AcrobatJS」カテゴリの記事
- [JS]Cropメニュー(連続ページに変換) 集約された2in1(2UP)のPDFを個別のページに分割します(2023.04.06)
- [Acrobat Javascripts]ページ順の入れ替え(2021.10.13)
- 【AcrobatJS】見開きページを単ページの連続ページに変更する(修正版)(2021.10.11)
- [Acrobat JS]appGetPageSize.js修正(2021.07.23)
- [Acrobat JS]openConsole.jsを修正(2021.07.23)