r - 如何使用 Illustrator 调整 R 中生成的 pdf 图形的大小

标签 r pdf adobe-illustrator

我正在使用 pdf() 在 R 中绘图命令。图形在 Acrobat Reader 中看起来很完美并且可以很好地调整大小。我平时的工作流程包括在Illustrator中操作标签等,另存为.eps提交给出版商或插入到 Word 中。对于单个图形,一切正常。

现在我试图通过手动将 4 个图形组合到一个 A4 Illustrator 文档中。但是,当我在 Illustrator 中调整标准 7x7 英寸 pdf 图形的大小以适合 A4 页面的一列(约 3.4 英寸宽)时,所有比例都会被搞砸,例如线条和符号轮廓变得太粗了。使用 pdf(..., width=3.4, height=3.4)在 R 中,为了生成原始图形而精心挑选的所有符号和字体大小都弄乱了。为什么我不能像调整 pdf 大小一样在 Illustrator 中调整图形大小,例如在 Acrobat Reader 中?

最佳答案

Illustrator 正在缩放所有内容,包括笔触粗细,用于绘制已转换为路径的线条和符号,以及未转换为路径的任何文本的字体大小。 (由于我没有 Illustrator,我无法确定 Illustrator 在打开 pdf 时是将“文本”视为文本还是路径。)

当 Adob​​e Acrobat Reader 显示 pdf 时,它只是显示当前文件的光栅化 View ,因此可以根据需要很好地缩放所有内容。

我看到两个选项;要么直接在 R 中创建 2x2 绘图并将其导出为具有正确尺寸的 PDF,要么减少每个绘图中使用的边距和字体大小,然后使用您显示的命令以所需的宽度/高度导出。

第一个选项可以通过以下方式实现:

pdf("attempt1.pdf", ....)
layout(matrix(1:4, ncol = 2, byrow = FALSE)) ## byrow = TRUE for fill-by-row
## all 4 plot calls go in here
layout(1)
dev.off()

您可能需要调整 pdf() 中使用的点大小设备并稍微调整一下 cex.???一些情节的设置,以完全按照您的需要进行定制。

或者,您需要减小点大小和边距并在 3.4 x 3.4 英寸设备上绘制每个图。像这样的事情会让你开始:
pdf("attempt2.pdf", height = 3.4, width = 3.4, pointsize = 10)
op <- par(mar = c(4,3,3,1) + 0.1) ## one line less per marging
## your single plotting call here
par(op)
dev.off()

?par有关控制绘图边距和其他参数的方法列表,您可能希望设置以控制最终绘图的质量。您不妨看看 cex.foo参数来控制图上文本的相对大小,但这都与您在创建 pdf() 时设置的基本点大小有关。设备。

关于r - 如何使用 Illustrator 调整 R 中生成的 pdf 图形的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12278373/

相关文章:

r - 如何将阻塞函数包装到 Promise R Shiny 中

r - 使用 ddply 和 lapply 聚合包含 NA 的类别?

c# - 如何在 HTML 对象标记中呈现 PDF 字节数组

svg - 此 SVG 无效。在打开之前验证它

javascript - 在 Adob​​e Illustrator 中检查锁定/隐藏图层

css - 如何使用 CSS 将 SVG 导入 Illustrator 而没有错误?

r - 当我将参数名称作为字符向量时,如何生成 `alist` ?

c++ - 使用 Rcpp 模块公开 C++ 类

ios - 在 iOS 上显示表格填写的 PDF

flutter - 如何在flutter中动态向pdf添加内部导航