為什麼 texstudio 內部 PDF 檢視器在影像上顯示條紋白線?

為什麼 texstudio 內部 PDF 檢視器在影像上顯示條紋白線?

問題也開於https://github.com/texstudio-org/texstudio/issues/51


當我在 Windows 上的 texstudio 中使用 MikTex 編譯此 MWE Latex 文件,然後使用 texstudio 內部 PDF 檢視器查看結果時,它會在影像上顯示白色條紋線。這些線條不在原始影像中。

當我使用外部 PDF 閱讀器(例如 adobe)查看編譯的 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 檢視器中的樣子

數學圖形

這是 PDF 在 adobe PRO pdf reader 中的樣子

數學圖形

請注意 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

Windows 7的。

答案1

這是 Mathematica 多個版本中常見的問題,但奇怪的是我無法使用 Mathematica 11(在 Linux 上,而不是 Windows 上)重現它。當向量圖形使用多邊形著色時(就像這裡的情況),但多邊形的輪廓被忽略時,就會發生這種情況。要解決此問題,請將您的映像匯出為 eps(稍後可以轉換為 pdf),方法是將 ContourPlot 命令包含在匯出命令中:

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”。Bfby的替換S會刪除填滿並僅繪製三角形。

在此輸入影像描述

可以看出,白線與三角形之間的邊界發生碰撞。因此,也許這是一個舍入問題。

答案3

我通常規避這個問題的方法是在多個圖層中導出此類圖像。

  • 僅包含彩色​​直方圖的一層,沒有軸也沒有文字。該文件將被保存,.png從而避免在垃圾箱邊緣出現觀看者的偽影。

在此輸入影像描述

  • 下一層包含所有線條和文字。該圖層將另存為.pdf

在此輸入影像描述

  • 這兩層可以透過多種方式組合。您可以使用 inkscape 或直接在 Latex 中進行操作並使用picture環境來堆疊影像。

在此輸入影像描述

(對於具有大量 bin 的直方圖,此方法還將顯著減小檔案大小並加快渲染速度.pdf

相關內容