TeX2imgに入れてあるmudrawは,TeX2imgから呼び出すために少し手を入れている.具体的には対話モードみたいに動けるようになっている.こんな感じ.
> mudraw --interactive open_document ← ファイルを開く命令 8 ← test.pdf の文字数 test.pdf 1 ← 戻り値,以降test.pdfにはこの番号でアクセスできる load_page ← ページを取得する 1 ← 上で得たopen_documentの戻り値 0 ← 1ページ目.ページ数から1引いた値を指定する. 1 ← 戻り値,以降このページにはこの番号でアクセスできる rotate_page ← /Rotateを取得する 1 ← load_pageの戻り値 90 ← 戻り値 pdfbox_page ← boxを取得する 1 ← load_pageの戻り値 4 ← cropの文字数 crop 0.000000 ← 戻り値,左 0.000000 ← 下 595.280029 ← 右 841.890015 ← 上 quit ← 終了
関数を引数により呼び出す感じ.値型として使えるのは数字と文字列で,数字は数字[改行]で,文字列は(文字列長さ)[改行](文字列本体)[改行]で与える.改行はLFでもCRLFでもCRでも大丈夫だと思う.TeX2imgではこうして注釈を入れている.
open_document 8 test.pdf 1 load_page 1 0 1 ← ここまで上と同じ. create_annot ← 新しい注釈を作る 1 ← load_pageの戻り値 4 Text ← "Text"形式の注釈を作る 1 ← 戻り値 set_annot_contents ← 注釈の中身を設定する 1 ← create_annotの戻り値 14 ← 文字列長さ I have ← 設定する文字列.このように改行を入れることもできる. a pen ← 戻り値はないので改行が帰ってくる set_annot_flag ← 注釈のフラグを設定 1 ← create_annotの戻り値 35 ← フラグ……何を意味するのかは忘れた. write_document ← ファイルへ書き出し 1 ← open_documentの戻り値 7 out.pdf quit
文字列はUTF-8で渡す.文字数は「バイト数」なので,改行がCRLFの場合は2文字で数える.文字列の長さを先に入力するのとかが激しく面倒なので,自分で手で打って使うことはないですね…….
0 件のコメント:
コメントを投稿
コメントの追加にはサードパーティーCookieの許可が必要です