我想为一些学术工作创建矩阵的可视化。我决定通过让图像中的像素对应于矩阵中的值来解决这个问题。我创建了如下漂亮的小 png:
适当放大后,您会得到一个非常合理的图像:
这是 inkscape 内的屏幕截图。然而,当我将其导出为 pdf 时,evince 和 chrome 在放大本来应该非常微不足道的内容方面都做得很糟糕,相反,我得到的东西看起来像:
pdf本身似乎适合打印,但不幸的是我在没有打印的情况下进行了很多编辑,这看起来不可接受。我确实发现了这个令人难以置信的旧线程,人们似乎对 chrome 的 pdf 查看器有类似的问题,而“解决方案”就是升级光栅图形。这是一个解决方案,但效率非常低。
有人知道如何更改 pdf 以便适当放大吗?也许在 evince 或 chrome 中进行配置更改可以正确呈现这些内容?即使是从光栅图像到矢量图像的好方法也可能合适?
评论汇总成答案...
PDF 中的图像字典有一个(可选)布尔条目Interpolate。它被指定为一个标志,指示图像插值是否应由合格的阅读器执行。
OP 用于创建 PDF 的程序 Inkscape 似乎已明确将此标志设置为 true。编辑 PDF 以取消设置此标志会创建一个看起来如 OP 所需的文件。
(这也是OP最终找到的Inkscape论坛帖子中提出的解决方案,即保存嵌入高分辨率位图的PDF。文件-> Inkscape首选项->位图->创建位图副本的分辨率,并将其设置为 6000 dpi)
插值在不同的观看者和不同的输出媒体中看起来不同,这是设计使然。 PDF 规范中关于插值的说明:
解决此问题的另一种方法(特别是某些 PDF 查看器往往不真正符合规范,例如在插值时忽略该标志)是在此处使用矢量图形,将位图像素绘制为矩形。结果应该是最佳的。符合要求的读者可以选择不实现 PDF 的此功能,或者可以使用其希望的任何特定插值实现。