【问题标题】:R Graphics are corrupted when printed to PDF with Microsoft OfficeR 图形在使用 Microsoft Office 打印为 PDF 时损坏
【发布时间】:2018-09-06 16:46:10
【问题描述】:

我不知道这是否属于这里。但是,我希望这个问题适合这里,并且有人可以就其解决方案给出提示。

我喜欢 R 图形。在准备演示文稿等时,我喜欢创建一些“精美”图形并将这些作为“元文件”导入 Powerpoint 的选项。 但是,这种方法有一个主要缺点: 每当我尝试将任何 Microsoft Office 文档存储为 PDF 时,使用 R 创建并保存为“元文件”的箱线图都会损坏。我在几台计算机上遇到了这个问题,除了使用 .bmp 等其他格式之外找不到解决方案。不过,我非常感谢使用 Metafile 选项。

我在 RStudio 中创建了一个箱线图:

boxplot(mtcars$disp)

然后我使用export 函数 --> copy to clipboard。在这里,我可以在“位图”和“元文件”之间进行选择。我更喜欢在这里使用“元文件”。 然后我将图像粘贴到 Powerpoint 中。最后一步是将 pp-presentation 保存为 PDF。

以下图片是用截图工具从最终的pdf中复制出来的:

这是 RStudio 中的箱线图 copied to clipboard 作为位图。

这是 RStudio 中的箱线图 copied to clipboard 作为元文件。 有什么建议可以避免讨厌的线条吗?

【问题讨论】:

  • 这将受益于更多的可重复性。例如,生成此图(或基于mtcars 的图)会很好,但是您的“打印到 PDF”的确切步骤以及如何在 powerpoint 中将 PDF 作为元文件图像导入 .. . 最后一点对我来说是新的,也许这些年来我一直错过了一件大事。
  • 我更新了问题。希望现在更清楚了。不,我认为您没有遗漏任何内容 - 我的问题非常不准确。
  • 这是一个很好的更新......我担心的是什么。我从来没有在 Windows R 图元文件到办公室功能方面取得过真正的成功。尽管我最近没有使用过devEMF,但我的运气更好(更喜欢 RMarkdown 而不是 LaTeX/PDF 报告)。当我需要使用 powerpoint 时,我要么接受粒度像素化,要么使用 png(..., res=300) 或类似方法来提高默认分辨率 72。抱歉,没有答案。
  • @yenats 您是否尝试在将元文件图形插入 PowerPoint 后取消组合它。这可能允许您在 PPT 中进行一些编辑以清理它。
  • @SteveRindsberg,谢谢您-对于一个非常快速而肮脏的解决方法,这会有所帮助。但是,在取消组合图形时,图例会部分移动。另一种解决方案是导出 pp-graph,就像 Tom Wenseleers 在此处 stackoverflow.com/questions/9555889/… 所描述的那样。不幸的是,由于 java 兼容性问题,他推出的包不再起作用。也许,有类似的东西可以导出 pp-graphs?

标签: r pdf graphics powerpoint


【解决方案1】:

CRAN 上刚刚推出了一个新软件包 export,它允许您以本地 Office 格式将图形导出到 Powerpoint 或 Word。从那里您可以在 Office 中保存为 PDF 而不会出现任何奇怪的线条,请参阅 https://cran.r-project.org/web/packages/export/index.htmlhttps://github.com/tomwenseleers/export

例如

install.packages("export")
library(export)
boxplot(count ~ spray, data = InsectSprays, las = 2)
graph2doc(file="plot.docx", width=7, height=5)
graph2ppt(file="plot.pptx", width=7, height=5)

即使在 Powerpoint 中保存为 PDF 后,这也会为您提供完美质量的矢量格式 PDF,没有任何奇怪的线条:

其他优点是您获得的 Powerpoint 版本是完全可编辑的矢量格式,使您能够对布局进行任何小的必要更改(它还完全支持透明度/Alpha 通道)。

【讨论】:

  • 哎呀哎呀。这似乎是一个非常有用的新包。谢谢你的回答!
  • 我检测到 graph2doc - 函数有问题,描述如下:stackoverflow.com/questions/58591852/…也许你有兴趣看看它?
猜你喜欢
  • 2011-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-10
  • 2022-09-24
  • 1970-01-01
  • 2019-06-26
相关资源
最近更新 更多