aminophen / dviout-util

Subset of DVIOUT utilities
Other
0 stars 0 forks source link

dvispc: Flatten nested annotation #4

Open aminophen opened 5 years ago

aminophen commented 5 years ago

dvipdfmx は,pdf:bann 〜 pdf:eann がネストされると

dpxlink.dvi -> dpxlink.pdf
[1
dvipdfmx:warning: Can't begin an annotation when one is pending.
dvipdfmx:warning: Interpreting special command bann (pdf:) failed.
dvipdfmx:warning: >> at page="1" position="(196.512, 119.253)" (in PDF)
dvipdfmx:warning: >> xxx "pdf:bann<</Type/Annot/Subtype/Link/Border[0 0 0]/H/I/C[0 1 1..."
dvipdfmx:warning: >> Reading special command stopped around >><</Type/Annot/Subtype/Link/Border[0 0 0]/H/I/C[0 1 1]/A<</S/...<<
][2
dvipdfmx:warning: Tried to end an annotation without starting one!
dvipdfmx:warning: Interpreting special command eann (pdf:) failed.
dvipdfmx:warning: >> at page="2" position="(207.866, 657.235)" (in PDF)
dvipdfmx:warning: >> xxx "pdf:eann"
]

のように警告が出る。dvispc の開発版はアノテーションのスタックを扱えるので,

としたい。

なお,pdf:nolink による中断 (suspend),pdf:link による再開 (resume) がある場合(例示ソース)は,これだけでは支障があるかもしれないため要確認。

aminophen commented 5 years ago

今のところ考えていること:

aminophen commented 5 years ago

オプション -f を新設し

他にも似たような修正機能をつける可能性があるので,flatten nested annotation だけで一つのオプションを占有するのではなく,汎用的なオプションをつける方が良いのではという気がしてきた。

→ というわけで 95529d6 でオプション全体に対するビットフラグ化を revert し,代わりに EXE2INDEP モードの機能を拡張することを想定して名称を EXE2MODIFY に変更した。