PDFがMS Wordから非常に大きいのはなぜですか?


70

この文だけを含む単純なMS Word文書を作成しました。

これは小さなドキュメントです。

他に何もありません。次に、このドキュメントをDOCXおよびPDFとして保存しました。ファイルサイズは次のとおりです。

DOCX:12 kB
PDF:89 kB

技術的には、この違いは非常に大きく、DOCXで数十kBのテキストドキュメントのほとんどが数百kBのサイズのPDFを生成し始めると、本当に悩み始めます。PDF形式の非効率な点は何ですか?または、Wordはひどい出力アルゴリズムを使用していますか?

ところで、PDF出力設定は、可能な限り最小のファイルを作成するように設定されました。

PDF出力オプション


28
私の推測では、PDFにはフォントが埋め込まれていると考えられます。これは、ドキュメントを本当にポータブルにする場合に必要です。
AFH

2
はい、フォントのサブセットは埋め込まれています。それかもしれません。同じ文を数百回繰り返してみましたが、PDFファイルのサイズは4 kBしか増えませんでした。(DOCXは12kBのままでしたが、これは圧縮形式であり、繰り返されるテキストには新しいバイトがほとんどないため、驚くことではありません。)
バーナード

1
@AFH Arialは埋め込まれません。i.stack.imgur.com/aUZgt.png
MonkeyZeus

1
コルモゴロフの複雑さの観点から考えると、Microsoft Wordは平均的なPDFビューアーよりも数百kB以上も大きくなっています。
ホッブズ

8
私の本当の疑問は、あなたのワードプロセッシング形式が同等のLaTeXよりもはるかに大きいのはなぜだと思います... :-p
Toby Speight

回答:


104

Notepad ++でPDFを開くと、以下が見つかります。

9 0 obj
<</Filter/FlateDecode/Length 79100/Length1 171804>>
stream
xœì}    XTGºvÕ9½/t7Ðl
..... many more bytes  ...   ëH|  
endstream
endobj
10 0 obj

そのオブジェクトは、/ FontFile2命令の最後でここで参照されます。

6 0 obj
<</Type/FontDescriptor/FontName/ABCDEE+Calibri/Flags 32/ItalicAngle 0/Ascent 750/Descent -250/CapHeight 750/AvgWidth 521/MaxWidth 1743/FontWeight 400/XHeight 250/StemV 52/FontBBox[ -503 -250 1240 750] /FontFile2 9 0 R>>
endobj

Word文書で使用されるフォントはPDFに埋め込まれるため、pdfは自己完結型です。

私が使用し、このスライドデッキを PDF命令をdecypherします。

フォントがPDFファイルに埋め込まれないようにするには、Word文書がPDFビューアーで使用可能な14の標準書体のいずれかを使用していることを確認してください(Wikipediaソース)

  • Times New Roman> Times(v3)(通常、イタリック、ボールド、ボールドイタリック)
  • Courier New> Courier(通常、斜め、太字、太字斜め)
  • Arial> Helvetica(v3)(通常、斜め、太字、太字斜め)
  • シンボル>シンボル
  • Wingdings> Zapf Dingbats


2
補足:リンクされたスライドデッキ(Powershellプレゼンテーション)は、読む価値があります。非常に詳細。PDFの構造を説明するコメントをお見逃しなく
-nixda

3

これは、Microsoft Wordで簡単な原稿をPDFにエクスポートしようとしたときに何度も起こりました。サイズが最大50 KBの5〜8ページのWord文書は、最終的に10 MB以上のPDFファイルになります。

Reneの答えは正しい方向にあります。問題はフォントがドキュメントに埋め込まれることですが、標準の書体の1つを使用するだけでは必ずしも問題が解決するわけではありません。

私の文書はすべて、Times New Romanであり、大胆でイタリック体よりも手の込んだものは使用していません。またはそう思いました。デフォルトのテンプレートで自動カーニングを有効にしていることがわかります(理由明らかです)。PDFにエクスポートするとき、Wordは実際にはこれらの各合字を個別のフォントオブジェクトとしてドキュメントに埋め込み、すべての信念を超えて膨張させていました。

修正は簡単です。毎回行うことを忘れないでください。

  1. 文書内のすべてのテキストを選択します。
  2. フォーマット→フォント→詳細設定
  3. 「フォントのカーニング」のチェックを外します

興味深いことに、合字、文脈上の代替、およびその他の高度なタイポグラフィ機能を有効のままにしておくことができます。結果のPDFのサイズには、知覚できるほどの影響はありません。

文書をPDFとして再エクスポートすると、100 KB程度になります。残念ながら、カーニングは標準以下なので、この方法で印刷することはお勧めしませんが、ドキュメントをメールで送信する場合は問題なく機能します。


-3

それほど技術的ではない答えとしては、PDFはベクトル(つまり、数学の方程式)を使用して、表示されるすべてのものを記述するというものです。すべての曲線と線は数学の方程式で定義されているため、特にドキュメントに画像がある場合は、多くの情報を保持する必要があります。

これの利点は、線や曲線に幅がないため、解像度に合わせて無限にズームインできることです。ズームに合わせて拡大縮小できます。

Googleの最近のフォント変更によりロゴのサイズが〜14KBから〜300Bに縮小されたのと同じように、単純なフォントがファイルサイズの縮小に役立つ可能性があります。


4
その類推は機能しません。まったく。Googleのロゴの変更はフォントだけでなく、グラデーションからフラットへの変更でもあり、サイズの違いが生じます。さらに、ドキュメントを大きなビットマップにエクスポートすると、フォント+テキストよりもはるかに大きくなります。数学的な方程式は、誤解を招くように言っているように、単なる整数座標のペアであり、グリフごとに数十個ある可能性があります。また、フォントであるため、すべての文字に対して繰り返す必要はありません。
ジョーイ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.