2016-07-21 10 views
1

私はmatlabの印刷に関する質問がたくさんあることを知っていますが、これを把握することはできません。MatlabはFigureの印刷サイズを設定します

17x23cmで印刷して保存したいです。解像度は600dpiです。

私はその後、export_figスクリプトを使用して、次の

export_fig Test.pdf -pdf -transparent; 
export_fig Test.pdf -pdf -transparent -r600; 

いずれかの方法のいずれかを実行しています。この

set(gcf, 'Units', 'centimeters', 'Position', [0 0 17 23], 'PaperUnits', 'centimeters', 'PaperSize', [17 23]); 

を試してみた、私は〜14x19 cmである数字を取得します。解像度は100dpiです。

だから私は1700フィギュアの600dpiは〜4000ピクセルだと思った。だから、画面上の数字を多くのピクセルに設定するだけです。

set(gcf, 'Units', 'pixels', 'Position', [0 0 4000 5500]); 

しかし、これは動作しません。私は、私のモニターは、その多くのピクセルをサポートするのに十分な大きさではないので、表示されません。そして、数字が表示されないので、私はそれを保存することはできません。

私はgimpやイラストレーターなどでサイズを変更できます。しかし、私は本当にしたくないです。

特定の解像度(600dpi)で特定の印刷サイズ(17cm)でpdf/epsグラフをエクスポート/保存するにはどうすればよいですか?

答えて

0

export_figを使用して印刷すると、結果の図を切り抜いて空白(図の内容がないところ)を削除します。このため、出力は指定したPositionよりも小さくなります。

これを防ぐには、-nocropオプションを使用します。

PDFなどのベクターグラフィック形式は、これが本当に効果を持つべきではないため解像度が本当に唯一、ラスタ画像の効果を有することが意図された指定
export_fig('Test.pdf', '-pdf', '-nocrop', '-transparent', '-r600') 

。どのようにしてPDFの「解決策」を決定していますか?

別のオプションは、ちょうど

あなたのイメージを作成するために、組み込みの print機能を使用する
print('myimage.pdf', '-dpdf', '-loose', '-r600') 

あり、ここで-looseオプションは、それが緩んでバウンディングボックスを使用していることを確認し、あなたの空き領域をトリミングしませんその結果、あなたが処方している寸法のイメージが得られます。

+0

パーフェクト。ありがとう、私はそれが欠けていた方法を逃したか分からない。 – Nertskull

関連する問題