web-dev-qa-db-ja.com

lubuntu 18.04へのアップデート後のPDFファイルの表示に関する問題

最近、lubuntuのバージョンを16.04から18.04に更新し、それ以来、特定のシンボルのpdfプロットの表示に問題がありました(evinceを使用)。表示しようとしているpdfファイルは次のとおりです。

https://www.dropbox.com/s/mc2wp2y8q2af1vj/stupidPlot.pdf?dl=

私の画面では、次のスクリーンショットのように表示されます。

wrong_display

次のように表示されます。

correct_display

したがって、ギリシャ記号のデルタ、ガンマ、大文字のデルタは期待どおりに表示されません。いくつか検索した結果、フォントが読み込もうとしているpdfファイルに埋め込まれていないことに関連していると思います(確かではありませんが、そうでない場合は修正してください)。 pdffontsは次の出力を提供します。

name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
Times-Italic                         Type 1            WinAnsi          no  no  no       7  0
Times-Bold                           Type 1            WinAnsi          no  no  no       8  0
Times-BoldItalic                     Type 1            WinAnsi          no  no  no       9  0
Helvetica                            Type 1            WinAnsi          no  no  no      10  0
Helvetica-Oblique                    Type 1            WinAnsi          no  no  no      11  0
Helvetica-Bold                       Type 1            WinAnsi          no  no  no      12  0
Helvetica-BoldOblique                Type 1            WinAnsi          no  no  no      13  0
Courier                              Type 1            WinAnsi          no  no  no      14  0
Courier-Oblique                      Type 1            WinAnsi          no  no  no      15  0
Courier-Bold                         Type 1            WinAnsi          no  no  no      16  0
Courier-BoldOblique                  Type 1            WinAnsi          no  no  no      17  0
Symbol                               Type 1            Symbol           no  no  no      18  0
Times-Roman                          Type 1            WinAnsi          no  no  no      19  0
ZapfDingbats                         Type 1            ZapfDingbats     no  no  no      20  0
Symbol                               Type 1            Symbol           no  no  no      21  0

私は次の提案を使用してそれを修正しようとしました: https://stackoverflow.com/questions/10277418/the-pdf-viewer-evince-on-linux-can-not-display-some-math-symbols -correctly GhostScriptを次のように実行します。

gs -o gs-repaired --- stupidPlot.pdf -dPDFSETTINGS =/prepress -sDEVICE = pdfwrite stupidPlot.pdf

これは機能していないようで、エラーを出します:

   **** Error: Encountered 'obj' while expecting 'endobj'.
               Treating this as a missing 'endobj', output may be incorrect.
   **** Error: Encountered 'obj' while expecting 'endobj'.
               Treating this as a missing 'endobj', output may be incorrect.
Processing pages 1 through 1.
Page 1
Loading NimbusSans-Regular font from /usr/share/ghostscript/9.26/Resource/Font/NimbusSans-Regular... 5086732 3571608 2679472 1286852 4 done.
Loading StandardSymbolsPS font from /usr/share/ghostscript/9.26/Resource/Font/StandardSymbolsPS... 5119500 3664456 2699672 1302649 4 done.

   **** This file had errors that were repaired or ignored.
   **** Please notify the author of the software that produced this
   **** file that it does not conform to Adobe's published PDF
   **** specification.

****このファイルからレンダリングされた出力は正しくない可能性があります。

さらに、私は数千(数万)のpdfプロットを作成する必要があるため、それらを正しく表示するためにフォントを埋め込む必要がないことが望ましいでしょう。

だから誰かがlubuntu 16.04から18.04に更新したときに何が変わったのか(16.04ではプロットは常に正しく表示されました)、そしてできればPDFをevinceに正しく表示できる方法を知っているのではないかと思いますPDFのフォント。

xpdfの代わりにokularevinceを使用してみましたが、同じようにシンボルが誤って表示されていました。

7
W. Verbeke

Adobe Illustratorでファイルを開くと、グリフフォントが実際に https://en.wikipedia.org/wiki/Symbol_(typeface) であることがわかります。 Adobe Reader、ただしevince付きではありません。同時に、おそらくシステムフォントとしてインストールされているフォントがないため、フォールバックするものはありません。静かに他のフォントに置き換えないことを説得するための小道具。

これを正しく表示できる最後のことは、作成時にフォントがファイルに埋め込まれている場合です(pdf内の完全な情報)。ただし、 https://root-forum.cern.ch/t/embed-fonts-in-pdf/21666/2 に基づくROOTでは、フォントを埋め込んでファイルサイズを小さく保つことはできません。

tl; drフォントが "Helvetica"に設定されていることを確認してください。MacでArialが表示されない限り、どちらの方法でも表示できます。正しくシンボル。

1
Andrzej