2023年05月25日
仕事でpdfのテキストを検索してそこにリンクをつけたいみたいな話がありました。
pdfの元ファイルがwordだからwordでリンクを最初はつけようとしていたのですが、いろいろな事情があってファイルが分かれており、pdfにしたあと結合してからページ内リンクをする必要があったため、acrobatでリンクさせられたらいいなぁということでちょっとやってみます。
以前学会系の仕事でpdfを無理やりIndesignに貼り付けて、そこにページ内リンクや別紙ファイルにリンクする、みたいな力業はやったことがあったのですが今回2000ページくらいあり、確認作業のほうが大変になりそうとのことで断念。
エクセルか何かで章タイトルとノンブルと通しノンブルのリストを作って、csvで配列として取り込んでそれを元にリンクさせたい。
これができればエクセルでしっかり台割を作ればあとの確認は(理論上)不要ですしね。
あまりに日本語のドキュメントが少ないのでメモしながらやっていきます。
まずそもそもどうやってAcrobatでjavascriptを使うのか。初期設定では表示と取り込みはできるけど編集とかコンソールができないみたい?(もう設定変えたから検証できない)
環境設定でここにチェック入れればおけ。
あとはツールからjavascript選んで
デバッガーひらけば
とりあえず編集画面みたいなのは出ます。
変数の使い方とかはいっしょなんだけど、関数の細かいところが若干違うイメージ。
とりあえずアラートとコンソールでhello world!!を出しましょう、ベタですが。
webのjavascriptだとコンソールはconsole.log("Hello world!!");
だと思うんですが、adobeの場合はconsole.println("Hello world!!");
みたいです。微妙に違う。
で、実行はコマンド+エンター
です。これがわからなくてなぜ実行できないのかわからずしばらく悩んでました…
コンソールにコマンド打ち込んでコマンドに表示されるみたいですね。わけわからん…
コンソールにはいくつかメソッドがあるみたいで、
メソッド | 説明 |
---|---|
clear | 内容を削除 |
hide | JavaScriptデバッガーダイアログの非表示 |
println | コンソールに(引数の値を)書き込み |
show | JavaScriptデバッガーダイアログの表示 |
別のエディターでちまちま打って、コンソールでテストしてclearで消すみたいな感じですかね。
コンソールの右下のゴミ箱ボタンでも削除できそうです。
アラートも若干違うみたいですね。app.alert("Hello world!!");
で実行すればアラートで出せるみたい。
こんな感じですね。
次回はページ操作でテキストの検索でもしてみます。
お仕事のご依頼やご相談、弊社サービス内容に関してなど、お気軽にご相談ください。