MS Word に高品質の図を挿入する最良の方法

MS Word に高品質の図を挿入する最良の方法

高品質の PDF 図を歪めずに Word に挿入する方法が必要です。

図のほとんどは、Python と Matplotlib で生成された科学的なグラフです。主な問題は、グラフ内のテキスト ラベルが正しくレンダリングされないことです。

PDF をオブジェクトとして、EPS ファイルを画像として挿入できることは知っていますが、これらの図は Word では非常に見にくく表示されます。

したがって、私の現在のワークフローは、Inkscape を使用して 300DPI で図を PNG ファイルとしてエクスポートすることです。ただし、図の品質はまだ満足できるものではなく、DPI を上げてみても品質の向上は見られません。

Word に高品質のグラフを挿入する良い方法をご存知の方はいらっしゃいますか?

答え1

Word 対 PDF または Eps の終わりのない戦い

ラスター画像解像度とサイズの間で妥協点を見つける必要があります。ドキュメントが 600 DPI で印刷されることがわかっている場合は、その解像度で画像をインポートすることができます。しかし、明日、より高解像度のプリンターを使用する場合は、最初からやり直す必要があります。DPI を増やすと、ドキュメントのサイズが大きくなり、システムにさらに多くのリソースが必要になります。

もしあなたがベクター画像画像定義に関連する問題は発生しませんが、インストールされているフォントに関連する問題が発生する可能性があります。また、たとえば 10 億のデータをプロットする場合に、ファイルが大きくなる可能性があります...

Word 内にファイルをインポートする必要がある場合は、次の操作を実行できます。

  • ソースへ移動: プロットを生成したスクリプト内で、必要なフォーマット(およびサイズ)を直接置き換えたり追加したりできます。matplotlibサイトから読む[1]ベクターグラフィック形式 [1b]

    plt.savefig(pp, format='pdf') 
    plt.savefig(pp, format='png')
    plt.savefig(pp, format='svg')
    

    あるいは

    fig.savefig('test.pdf')
    fig.savefig('test.png')
    
  • imagemagickを使用する [2]またはインクスケープ [2b]またはギンプ [2b]を使用して、PDF を png (または他のラスター形式、tiff、jpg など) または svg (または他のベクター グラフィック形式) に変換します。

    これはPDFの場合によります。ベクターグラフィック[3] が内部にあるかどうかを確認します。
    前者の場合、まれにレンダリングやフォントの問題が見つかることがありますが、定義の問題はありません。
    後者の場合、最終的な画像の密度と寸法を選択する必要があります。
    たとえば、この回答[4]
    次のような内容を書き終えるでしょう。

    convert file.pdf file.svg                                  # If pdf with vector
    convert -density 600 file.pdf -resize 4961x7016 mypic.png  # With fixed grid
    

注記
PDF ファイルが、たとえば 300 DPI などの特定の定義を持つラスター イメージで作成されている場合、どのプログラムでも DPI を 400 または 600 に増やしても、あまり成功しません... :-)
経験則として (通常は機能します)、ラスター PDF には文字列 があると想定できます/image
したがって、たとえば Linux では、 を実行しgrepてその文字列の出現回数をカウントできます。

grep  -c -i "/image" *pdf
MyRasterPdf.pdf:3    # > 0  if raster pdf
MyVectorPdf.pdf:0    # = 0  if vector pdf

最後に、考慮すべき点としてラテックスおそらくGUI付きテックスメーカー

答え2

2018 年 5 月現在、Office 365 エディションの Microsoft Word では、この質問に対する回答が変わる 2 つの変更が加えられています。

つまり、高品質のグラフィックスを処理する最良の方法は、Matplotlib で正しいサイズの図を作成し ( を使用plt.figure(figsize=(width_in_inches, height_in_inches))、その図を を使用してエクスポートすることplt.savefig('filename.svg')です。このファイルを Word に直接挿入すると、PDF に変換する場合でも正しくレンダリングされます。

このビデオ全体のプロセスを示し、フォーマットを比較します。

答え3

Word 2016 では、matplotlib グラフィックをインポートするためのワークフローは次のようになります。

import matplotlib.pyplot as plt

Illustrator で図やテキストを調整できるように編集可能なテキストをエクスポートします。デフォルトでは、matplotlib は Adob​​e Illustrator が理解できない「Type 3 フォント」をエクスポートするため、Type 2/TrueType フォントをエクスポートする必要があります。

plt.rcParams['pdf.fonttype'] = 42
plt.rcParams['ps.fonttype'] = 42 

図を保存

plt.savefig('my_figure.pdf',bbox_inches='tight',transparent = True)

Illustratorで開いて必要に応じて調整します

画像を.emfとしてエクスポート

my_figure.emf を Word に挿入する

答え4

画像圧縮設定を調整して、Word から画像の自動解凍を削除します。Word には、ファイル サイズを小さくするために画像の品質を低下させる可能性がある既定の圧縮設定があります。これらの設定を変更するには、次の手順を実行します。

  1. 「画像の挿入」機能を使用して、画像を Word に挿入します。
  2. 挿入した画像を右クリックし、「画像の書式設定」または「サイズと位置」を選択します。
  3. [図の書式設定] または [サイズと位置] ウィンドウで、[圧縮] オプションを選択します。
  4. 「この画像にのみ適用」ボックスのチェックを外し、希望の解像度またはターゲット出力品質を選択します。

Microsoft Word で画像圧縮設定を調整し、画像を最高の品質で保存するには、画像を挿入するときに Word が画像に圧縮を適用しないように既定の設定を変更して、元の品質を維持します。

  1. Microsoft Word を開き、左上隅の「ファイル」タブをクリックします。
  2. メニューから「オプション」を選択します。これにより、「Word オプション」ダイアログ ボックスが開きます。
  3. 「Word オプション」ダイアログボックスで、左側の「詳細設定」タブをクリックします。
  4. 「画像のサイズと品質」セクションまで下にスクロールします。
  5. 「画像のサイズと品質」セクションの下に、「デフォルトの解像度」オプションがあります。
  6. デフォルトでは、「高忠実度」に設定されています。ただし、「ファイル内の画像を圧縮しない」オプションを選択して、圧縮を完全に無効にすることができます。
  7. 「OK」ボタンをクリックして変更を保存します。

ただし、これによりファイル サイズが大きくなる可能性があるので、ドキュメント全体のサイズへの影響と、送信時のファイル サイズ制限を考慮してください。

参照:https://chat.openai.com/share/26d14c16-2cbd-4e48-a50b-523eb7c91732

*** これが一番効果的です ***

関連情報