05-02-2012, 09:05 AM
ご無沙汰してます。
print-graphicの挙動に関して3点ほどご質問があります。
別に緊急なわけではないのですが、
ご存知の方が居ればご教授ください。
1.print-graphic-pdfで作成されるPDFのファイルサイズ
print-graphic-pdfで作成されたPDFと
print-graphicで作成した印刷イメージを外部の変換ツールでPDFにしたものの
ファイルサイズを比較すると、print-graphic-pdfで作成した方が
ファイルサイズがかなり大きいことが確認されました。
これは単純な圧縮比率の差なのでしょうか?
文字が主体のドキュメントを印刷したとき
2つのPDFの間で仕上がりに大差が無いように見受けられたので、
少し気になりました。
2.print-graphic-pdf実行時のメモリ使用量
print-graphic-pdfを利用している間メモリ利用量がかなり増加するのですが、
これを減らせる実装方法はありますでしょうか?
例えばprint-graphicだと以下のような方法を取ることで、
印刷実行中のメモリ使用量の増加を抑えることが出来ます。
{let 印刷グラフィック:Graphic}
{print-graphic 印刷グラフィック}||←改ページ処理があるが、便宜上省略
{set 印刷グラフィック = {新しいグラフィック}}
{garbage-collect}
しかし、print-graphic-pdfを利用した場合は
どうも内部で印刷イメージをキャッシュしているせいか
garbage-collectを行ってもメモリ使用量は減りませんでした。
大量ページ(感覚的には30ページ以上)を印刷すると
print-graphic-pdfの処理時間が長くなるように感じるので
プログラムで回避できる方法があれば知りたいと思います。
3.print-graphic-pdfで作成したPDFをスマートフォンで閲覧すると
実装の仕方が悪いのかもしれませんが、
print-graphic-pdfで作成したPDFをスマートフォン
(Android、iPhone両方で試しました)で閲覧すると
文字化けを起こして正しく表示することが出来ませんでした。
現象を特定できていないので曖昧な言い方になりますが、
少なくとも日本語が入っている場合は、ほぼ文字化けするようです。
WindowsのAdobe PDF上では正しく閲覧できたのですが、
これはPDF内部の問題でしょうか?
それともAndroidやiPhone内部のPDFリーダの問題でしょうか?
一先ず回避策は検討して対応できてますが、
原因が究明できればと思います。