MATLAB:将图形打印为pdf,如图中所示

时间:2011-03-10 07:05:43

标签: matlab figure export-to-pdf

我正在尝试将图形导出(另存为,打印)为.pdf格式。但是,无论我如何配置设置,图中都有很大的边距。

当我将图形导出为.eps格式时,没有这样的问题 - 即图形看起来就像在MATLAB中显示一样。

如何将图形导出为.pdf格式,其外观与MATLAB中显示的相同?

3 个答案:

答案 0 :(得分:5)

您可以通过在plot命令后立即添加以下代码行来自动完成上述过程。

set(gcf,'Units','inches');
screenposition = get(gcf,'Position');
set(gcf,...
    'PaperPosition',[0 0 screenposition(3:4)],...
    'PaperSize',[screenposition(3:4)]);
print -dpdf -painters epsFig

前两行测量图形的大小(以英寸为单位)。下一行配置打印纸尺寸以适合图形尺寸。最后一行使用print命令并导出矢量pdf文档作为输出。

答案 1 :(得分:3)

您可以尝试以下操作:

1)在MATLAB中绘制图形后,转到“文件 - >导出设置”,然后输入所需输出的大小。例如,宽度:6英寸,高度:5英寸。然后单击“应用于图”按钮。

2)不要关闭“导出设置”窗口。转到“文件 - >打印预览 - >纸张”,在“宽度”和“高度”选项中输入相同的尺寸。

3)不要关闭“打印预览”窗口。返回“导出设置”窗口,然后单击“导出”,然后选择pdf格式并保存。

4)检查输出PDF文件,你会发现它是完美的。

我在博客文章 Export figure to PDF in MATLAB 中找到了解决方案。

答案 2 :(得分:0)

2行脚本,用于在横向A4中导出为PDF(假设您的图是“当前图形”):

%---------------------------------------------- ---------------------

将纸张尺寸调整为横向A4并相应地重新定位图形

set(gcf,'PaperSize',[29.7 21.0],'PaperPosition',[0 0 29.7 21.0])

%导出到PDF文件'YourFileName.pdf'

print -dpdf'YourFileName'

%---------------------------------------------- ---------------------

其他任何调整:检查图形属性-只需在命令窗口中单击“ get(gcf)”