Closed doraTeX closed 8 years ago
あけましておめでとうございます。本年もよろしくお願いいたします。
時間が空いてしまいましたが、SVG への対応については
SVG を「PDF 生成経路に続いて“パッチ適用 mudraw”に通す」ほうがわかりやすいと思いました。
確かに,pdftops の極めてデリケートな性質に依存するよりも,それによってこの問題を根本的に解決することができれば,それに越したことはありませんね。
Mac での mudraw のビルドに成功したら教えてください……😓
Mac 版の mudraw のビルドと変換経路を元に戻すという話だった気がしましたので、mudraw のビルドを試してみました。Lion 環境で素朴に mupdf-1.7a-source.tar.gz を展開して
$ cd mupdf-1.7a-source
$ make build=release NOX11=yes
とすると一応ビルドは通るみたいです。できた mudraw を otool で見ると依存ライブラリは
でした(ということは port には依存していないようだが、libcrypto がまずい…? どうすればよいのでしょう)。ソースに abenori さんのパッチ svg-device.patch をあてればパターンの translate が直るということのようです。なお、mupdf-1.8-source.tar.gz で同じことをやろうとするとなぜか X11 を無効にできず、Makerules の HAVE_X11 ?= yes
のところを no
に変えて
# Mac OS X doesn't have pkg-config so we hard code paths.
else ifeq "$(OS)" "MACOS"
HAVE_X11 ?= no
HAVE_GLUT ?= yes
としたらビルドは通りました。(mutool というのしかできませんが、単に mudraw の機能が mutool に統合されただけですので、リネームまたはシンボリックリンクで mudraw にできます)。
show
を true charpath fill
に再定義すればよいはずなのですが、(EPS の冒頭への追記ならうまくいく場合もありますが)PDF への作用はできないようでした。あけましておめでとうございます。 昨年は大変お世話になりました。本年も TeX2img をよろしくお願いします。
さて,mupdf のビルド法の調査ありがとうございます。 お陰様で,こちらでもビルドに成功し,Ver. 2.1.5 beta 9 が完成しました。
~
が入った入出力パスに対応しました。(#72)これで,SVGパターン塗り問題が一気に解決したのではないでしょうか。😄 まだテストが不十分なので,要テストですが。
Ver. 2.1.5 beta 9 を試しました。libcrypto がなくなって軽くなったのでよかったです😃 SVGZ 形式での出力、~
が入った入出力パス、文字情報パネルの改善は確認しました。
結局、本トピックで経路としては変わったのは EMF だけということですね。アウトライン化 PDF / SVG のパターン塗りが gs9.15 未満でたまにビットマップ化されるのは対処が面倒だし、Win/Mac ともにしょうがないということで。
mupdf のパッチ版が translate 修正に成功しているかどうか今手元ではわかりません… 後で出来たSVG を Windows に持っていってチェックします…(ビルド済み dmg で配布されている Inkscape 0.91 が Lion でクラッシュ&MacPorts のは依存ライブラリ libvisio-0.1 のビルドで落ちる😥)
2 * sdev->tiles->step.y
というところがいい加減(特に根拠無し)なので,きちんと考えた方が良いかもしれないです.たぶん塗りつぶし一つ一つの高さぴったりにするのが良いのですが,sdev->tiles->step.yはそれよりちょっと小さい気がしています.
ちなみに,前回 mupdf のビルドができなかったのは,El Capitan で OpenSSL のヘッダファイルが提供されなくなったことが原因だったようです。 今回は,Snow Leopard を入れた仮想マシン上でビルドすることで成功しました。
とりあえずmupdf\source\pdf\pdf-on-run.cのTILEの#defineを外してやるとタイルの繰り返しを展開してたくさんのパスとして処理してくれるようになるようです.
この方法でやると,パターンがアウトライン化されて,斜線のつなぎ目が綺麗になりますね。 その代わり,ファイルサイズが激増します。
これらの結果は,Safari, Chrome, Firefox のいずれでも同様でした。
どちらがよいでしょうか……。
PDF / PS のパターンは本来 SVG のパターンへと変換されるべきで、MuPDF がパターンの分割をバグ認定したうえで修正したのは妥当でしょう。これを昔のものに戻すのは良くないと思います。
なるほど,そうでした。 では,テスト結果も概ね問題なさそうですので,そろそろ Ver. 2.1.5 のリリースと行きましょうか。
現象
次のソースを TeX2img でSVG化すると,パターンが欠ける。
# 原因~~#34 で,mudraw の最新バージョン対応のために
-l
オプションを外したことが原因。 TeX2img.app に内包されている旧バージョンの mudraw は-l
オプションを受け入れる。#34 の改修前のように,-l
を付けておけば,パターンも無事に保持される。~~# 対策GUI版については,.app に内包されている旧バージョンの mudraw を使っているので,-l
を付けるように戻せばよいだろう。CUI版については,GUI版がインストールされている場合はその中の mudraw を優先的に使い,-l
オプションを付ける。GUI版がインストールされておらず,新バージョンの mudraw のみインストールされている場合は,やむなく-l
なしで実行する。とするのが最善か?# 検討事項新バージョンの mudraw でも旧バージョンの-l
に相当することはできないものか?