一部のファイルで細い白い線が表示されるのはなぜですか?
PDFをHTML5やSVGに変換する際、生成された出力に細い白い線が現れるファイルが一部存在することがあります。元のPDFファイルでもこの白い線が薄く見える場合もあれば、ズームイン・ズームアウトすることで線が現れたり消えたりする場合もあります。

この現象は、Adobe InDesignで作成されたPDFファイル、またはAdobeのPDF Optimizer/Compressorツールを使用して圧縮されたPDFファイルでよく見られます。具体的には、「透明の分割・統合」機能が原因で、この機能は透明部分の周辺でPDFコンテンツを分割し、それらの領域を統合します。また、この機能は透明度に関係なく、大きな画像を小さなタイルに分割することも確認されています。
詳しくは以下をご覧ください:
PDFコンテンツを分割する際、透明の分割・統合処理は各サブセクションの周りにクリップ領域を追加します。これは非常に細かい公差で行われるため、分割された部分の間にピクセルの一部が生じ、それがクリップ領域の外側になります。その結果、それらのピクセルが完全に塗りつぶされず、セクション間に細い線が現れるのです。
一部のPDFビューアでこの現象がより顕著に現れるのは、グラフィックスレンダリングエンジンが、コンテンツが部分的にしか重ならないピクセルを塗りつぶす方法が異なるためです。この問題が発生するファイルは、スキャン変換と呼ばれるPDFの機能に依存しています。スキャン変換は、グラフィックスレンダラーによって制御されるプロセスで、コンテンツが部分的にしか重ならない場合にピクセルをどのように塗りつぶすかを決定します。
PDF仕様では、非常に寛容なスキャン変換が求められており、コンテンツが部分的にしか重ならない場合でもピクセルを完全に塗りつぶすようになっています。しかし、HTMLやSVGに変換する場合、Webブラウザによるコンテンツのレンダリングに依存することになり、これらはスキャン変換の制御を提供していません。
この問題に対する回避策が2024.05.30のデイリービルドに追加されました。詳しくはこちらをご覧ください:細い線の改善 。
