2017-07-27 15 views
0

私は最終的にghostscript(Linux)がPDF(input ps)で終了するように呼び出されるpdf生成パイプラインを持っています。使用される一般的なコマンドラインが望んでいたようなフォントが含まれずに素敵なPDFファイルを生成しGhostscriptはフォントを埋め込むべきではなく、代理人をリストするだけです

ps2pdf13 -dSAFER -dPDFSETTINGS=/default -dEmbedAllFonts=false -dNoOutputFonts -dFastWebView infile outfile 

あるので、PDFは、可能な限り小さくしなければならない、という仮定は、ターゲット・システムは、その後、彼らは交換する必要があるものは何でも使用する必要があるということです。はい、これは、異なるシステムではわずかに異なるフォントを使用するため、異なる外観になることがあります。

ほとんどの場合、PDFのプロパティに7種類のフォントが表示されます。 Linux上でうまく動作します。

Windows(Acrobat Reader)が不足していると不満を表明し、その文字を表示しません。

私はgsにフォントを埋め込ませることができますが、PDFサイズを50%増やすことができます。それを回避したいと思います(約6000バイトですが、実行ごとに約30000倍になります)。

「For Font Helvetica-NarrowはArial Narrowを使用する」などの情報をPDFに「埋め込む」方法があります。

存在しますか?

[編集]

忙しい返事が遅れ、申し訳ありません。 :(

まあ、OK。私は、フォント選択のための可能なオプションのリストを考えていた。また、その方法から、質問が間違った方法を行っても良い。

オプション、ところで、作るのですか異なるサイズ、それは大きさの原因であることが -dEmbedAllFonts 1のようですけれども、-dNoOutPutFonts doesntのは、実際にどんな効果を持っているようだ。

私たちはしてみてください(非常に古い)蒸留、と比較しなければなりません置き換え、pdffontsを使用すると、次の表が得られます。

psp2d F:

name         type    encoding   emb sub uni object ID 
------------------------------------ ----------------- ---------------- --- --- --- --------- 
Helvetica-Narrow      Type 1   Custom   no no no  11 0 
Helvetica-Bold      Type 1   Custom   no no no  9 0 
Helvetica-Narrow-Bold    Type 1   WinAnsi   no no no  13 0 
Courier        Type 1   Custom   no no no  15 0 
Courier-Bold       Type 1   Standard   no no no  10 0 
Helvetica       Type 1   Custom   no no no  8 0 
Times-Italic       Type 1   Standard   no no no  21 0 

蒸留器:Acrobat Readerは " ヘルベチカ狭フォントが見つからないこと" を訴えps2pdfが作成されたPDFファイルで

name         type    encoding   emb sub uni object ID 
------------------------------------ ----------------- ---------------- --- --- --- --------- 
Helvetica       Type 1   Custom   no no no  4 0 
Helvetica-Bold      Type 1   Custom   no no no  5 0 
Courier        Type 1   Custom   no no no  6 0 
Courier-Bold       Type 1   Custom   no no no  7 0 
Helvetica-Narrow      Type 1   Custom   no no no  8 0 
Helvetica-Narrow-Bold    Type 1   Custom   no no no  9 0 
Times-Italic       Type 1   Custom   no no no  15 0 

。蒸留所の一人が働く。 私はそれを取得しません。それは少なくともそのフォントでは同じリストです。

そして明らかにそれはひどく見えます。

解決策の1つは、フォントを埋め込むことです。フォントリストが

name         type    encoding   emb sub uni object ID 
------------------------------------ ----------------- ---------------- --- --- --- --------- 
XVQNWP+Helvetica-Narrow    Type 1C   Custom   yes yes no  11 0 
Helvetica-Bold      Type 1   Custom   no no no  9 0 
LBTZEH+Helvetica-Narrow-Bold   Type 1C   WinAnsi   yes yes no  13 0 
Courier        Type 1   Custom   no no no  15 0 
Courier-Bold       Type 1   Standard   no no no  10 0 
Helvetica       Type 1   Custom   no no no  8 0 
Times-Italic       Type 1   Standard   no no no  21 0 

に変わり、ファイルサイズが大きくなり、避けたいものです。 Distiller はその可能性を示していますが、方法は示していません。

答えて

0

いいえ、欠落しているフォントの代替フォントを定義することはできません。これは完全にビューアの裁量に委ねられます。とにかくそれはどんなに助けになるだろうかあなたが定義した代用者が視聴者に利用可能でない場合は、とにかく自分自身の代用に戻らなければならないか、全く失敗するでしょう。あなたのコマンドラインで

いくつかのコメント:あなたは-dNoOutputFontsを使用している場合

、あなたのPDFファイルは、すべて、任意のフォント、フォントの参照を含めることはできません。また、フォントの埋め込みを無効にするよりも大きく(サブセットフォントが埋め込まれた同じPDFよりも大きい)、すべてのテキストがパスデータとして含まれるため、パスデータの繰り返しがそれを超えるフォントサイズ

フォントの参照を終わらせるが、フォントを含まないファイルをどのように作成するのか見えにくい。あなたはそれがデフォルトであるため-dPDFSETTINGS=/defaultを指定する必要はありません

...

あなたが小さいファイルをしたい場合は、より大きな(なぜなら形式で)である線形化PDFファイルを生成-dFastWebViewを指定しません線形でないファイルよりも非常に少数の視聴者がそれを賞賛します。たとえ最初のページビューを高速化できるだけであっても、ファイルが非常に小さい場合、ファイル全体が線形化されたファイルの早い部分と同じ速さで到着するので無意味です。

バージョンを1.3に強制すると、少なくとも将来はファイルサイズが大きくなる可能性があります。

関連する問題