【问题标题】:MATLAB: print a figure to pdf as the figure shown in the MATLABMATLAB:将图形打印为pdf,如MATLAB中所示的图形
【发布时间】:2011-07-12 12:10:39
【问题描述】:

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

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

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

【问题讨论】:

标签: matlab figure export-to-pdf


【解决方案1】:

您可以尝试以下方法:

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

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

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

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

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

【讨论】:

  • 效果很好,非常感谢。是否可以将这些设置保存为默认值?看来我每次都必须完成所有这些步骤。
【解决方案2】:

您可以通过在 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文档作为输出。

【讨论】:

  • 这个数字看起来很模糊。
  • 这段代码似乎不再适用于最新版本的 Matlab。
  • 这段代码似乎适用于我在 Matlab R2021b 中,只要删除最后一行代码。
【解决方案3】:

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

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

% 将纸张大小调整为横向 A4 并相应地重新定位图形

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

% 导出为 PDF 文件“YourFileName.pdf”

打印 -dpdf '你的文件名'

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多