R 将图形输出到两页PDF

R 将图形输出到两页PDF,r,pdf,plot,R,Pdf,Plot,我正在做一个森林绘图,并希望将其保存为PDF文件 我的森林面积过大(8英寸*20英寸)。它可以放在一页PDF中,如下所示: dev.print(pdf, file="C:\\Work\\plot.pdf", width=8, height=20); 但是它太长了:当我在A4纸上打印这个PDF文件时,它必须缩小以适应纸张 所以我想把它保存到一个两页的PDF文件中(来自R)。Ps:这不是关于如何设置打印机的问题 如何做到这一点?可能不是您想要的答案,但您可以将其打印为另一种矢量格式(如svg)

我正在做一个森林绘图,并希望将其保存为PDF文件

我的森林面积过大(8英寸*20英寸)。它可以放在一页PDF中,如下所示:

  dev.print(pdf, file="C:\\Work\\plot.pdf", width=8, height=20);
但是它太长了:当我在A4纸上打印这个PDF文件时,它必须缩小以适应纸张

所以我想把它保存到一个两页的PDF文件中(来自R)。Ps:这不是关于如何设置打印机的问题


如何做到这一点?

可能不是您想要的答案,但您可以将其打印为另一种矢量格式(如svg),然后使用(矢量)图像编辑器将其导出为两页pdf格式

编辑:如果在pdf中绘图工作正常,尽管图形很大,也有工具可以拆分pdf页面。你可以在这里找到一些方向:


例如,与pdfposter相当的Windows可以是或。

因此,您可以生成一个
8in x 20in==203.2mm x 508mm==576pt x 1440pt
大小的PDF,显示绘图

从你的问题来看,我并不完全清楚你到底想要什么:

mutool poster -x 1 -y 2 input.pdf output.pdf
  • 生成PDF绘图,以便从一开始就将其分为两个不同的页面
  • 按原样获取PDF,并在打印作业设置期间找到这些设置,这些设置将通过对原始页面进行后期验证将PDF打印到两个不同的页面上
  • 对您创建的PDF进行后期处理以对其进行后期处理,并创建一个2页的输出PDF(然后可以打印)
  • 假设为“1”:生成分布在2页上的PDF绘图 对不起,我帮不上忙

    假设为“2”:打印设置为在2张纸上打印1个PDF页面 如果您从AdobeAcrobat或AdobeReader打印PDF,则会在“打印”对话框中找到一个名为“海报”的设置。在这里,您可以选择在多张纸上打印一个PDF页面。(它还允许您选择是否要在一个工件到另一个工件之间进行重叠,以及是否要在打印输出中添加剪切标记等)

    假设为“3”:将1个PDF页面后处理为2个A4页面
  • 是一种轻量级PDF(和其他文档格式)查看器,由同样维护Ghostscript的公司制造。MuPDF附带了一个额外的命令行实用程序,
    mutool

    它的子命令
    poster
    可以将PDF页面分成更小的分幅,并对其进行“后期处理”。因此,此命令将实现您想要的:

    mutool poster -x 1 -y 2 input.pdf output.pdf
    
    output.pdf
    将在x-方向分为1个部分(即未划分),在y-方向分为2个相等的部分。(如果需要,可以将其划分为任意数量的段)。因此,
    output.pdf
    将有两个页面,每个页面大小为
    8英寸x10英寸
    。A4纸张的尺寸为8.26英寸x 11.69英寸,单位为英寸

    在打印这些文件时,如果要充分利用A4页面大小,您仍需要在“打印”对话框中启用“打印到适合页面大小”复选框

  • 是一个命令行工具,可以(在许多其他功能中)用于处理PDF文件(PDF输入、修改后的PDF输出)。它可以(ab)用于将PDF页面切成半页

    下面是一些前面的答案,它们描述了如何做到这一点。您需要根据您的具体大小调整一些参数,但这些示例中的原则应该很清楚(即使其中一些页面分为左右两半,而不是您可能需要的上/下两部分):

    • (超级用户)
    • (超级用户)
    • (超级用户)
    • (超级用户)
    • (堆栈溢出)
    • (堆栈溢出)
    • (堆栈溢出)
    这里描述的方法更加繁琐,不像
    mutool poster
    方法那样直截了当


  • @KurtPfeifle我不知道我是否错了,但这不能使图表横向@Dirk Eddelbuettel我已经检查了这个问题,它与我的问题不同。我的不是复制品,我的坏。我相当肯定R实际上会为您创建一个8英寸乘20英寸的打印机,但您的问题可能是如何让打印机驱动程序将其拆分为几张A4(或信纸)。