Texstudio の内部 PDF ビューアで画像に白い縞模様が表示されるのはなぜですか?

Texstudio の内部 PDF ビューアで画像に白い縞模様が表示されるのはなぜですか?

問題も開かれた翻訳元: texstudio-org


この MWE LaTex ファイルを、Windows の texstudio で MikTex を使用してコンパイルし、texstudio の内部 PDF ビューアを使用して結果を表示すると、画像の上に白い縞模様の線が表示されます。これらの線は元の画像には存在しません。

また、Adobe などの外部 PDF リーダーを使用してコンパイルされた PDF ファイルを表示する場合も、これらの行は表示されません。

それはなぜでしょうか? 画像も PDF ファイルです。解決できますか? これは texstudio pdf ビューア自体のアーティファクトにすぎないと思われるため、実際には大きな問題ではありませんが、これを修正するオプションがあるかどうかを尋ねようと思いました。

MWEはこちら

\documentclass{article}
\usepackage{graphicx}
\begin{document}
This is my image, as PDF file, imported using includegraphics

\includegraphics[width=\textwidth]{image}    
\end{document}

私はimage.pdfファイルを私のウェブページに置きましたここ

コンパイルされたPDFはTexstudio PDFビューア内で次のように表示されます。

Mathematica グラフィックス

Adobe PRO PDFリーダー内でのPDFの表示は次のようになります

Mathematica グラフィックス

Texstudioに表示される白い線に注目してください。これはpdfinfo画像ファイルにあります。

pdfinfo image.pdf 

Creator:        Wolfram Mathematica 11.2.0.0 for Microsoft Windows (64-bit) (September 10, 2017) Student Edition - Personal Use Only
Producer:       
CreationDate:   Sat Mar  3 16:13:39 2018
ModDate:        Sat Mar  3 16:13:39 2018
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          1
Encrypted:      no
Page size:      470 x 367 pts
Page rot:       0
File size:      99049 bytes
Optimized:      no
PDF version:    1.5

使っています

TeXstudio 2.12.6 (hg 6632:7777b2b8a906)
Using Qt Version 5.9.1, compiled with Qt 5.9.1 R

ウィンドウズ7。

答え1

これは Mathematica のいくつかのバージョンに共通する問題ですが、不思議なことに Mathematica 11 (Windows ではなく Linux) では再現できません。この問題は、ベクター グラフィックスがポリゴンを使用してシェーディングされている (この場合) 場合に発生しますが、ポリゴンのアウトラインは省略されます。この問題を解決するには、ContourPlot コマンドを Export コマンドで囲んで、イメージを eps としてエクスポートします (後で pdf に変換できます)。

Export[ "myfile.eps" , Contourplot[ ... ] ] 

次に、お気に入りのテキストエディタでepsファイルを開き、ポリゴンを塗りつぶすために使用するマクロを見つけます。これはファイルの先頭近くにあり、おそらく次のような内容です。

/f { fill bind def }

多分

/f fill load def

fillに変更してgsave fill grestore strokeファイルを保存します。新しい命令は、ビューアにポリゴンをシェーディングするように指示します。そしてアウトラインを描画します。ビューアを再読み込みすると、問題が解消されていることがわかります。

答え2

画像は三角形で構成されています。次の画像は PDF ファイルから生成されます。まず、ファイルのページ ストリームが次のように解凍されます。

 pdftk image.pdf cat output image-uncompress.pdf uncompress

m B次に、" " を " m S" に、" m f" を " " に置き換えることでファイルが変更されますm S。 をおよびに置き換えるとB、塗りつぶしが削除され、三角形のみが描画されます。fS

ここに画像の説明を入力してください

ご覧のとおり、白い線は三角形の境界と衝突しています。したがって、これは丸めの問題である可能性があります。

答え3

この問題を回避するための私の通常のアプローチは、そのような画像を複数のレイヤーでエクスポートすることです。

  • .png色付きのヒストグラムのみを含む 1 つのレイヤー。軸もテキストもありません。このファイルは、ビンの端にあるビューア アーティファクトを回避するように保存されます。

ここに画像の説明を入力してください

  • 次のレイヤーにはすべての線とテキストが含まれます。このレイヤーは次のように保存されます。.pdf

ここに画像の説明を入力してください

  • 両方のレイヤーは、いくつかの方法で組み合わせることができます。Inkscape を使用するか、LaTeX で直接実行して、picture環境を使用して画像をスタックすることができます。

ここに画像の説明を入力してください

(ビンの数が非常に多いヒストグラムの場合、このアプローチによりファイルサイズが大幅に削減され、レンダリングが高速化されます.pdf。)

関連情報