您是否知道如何导出 PDF,而其中本来应该显示图形的地方却只有空白?(反之亦然)
我为什么需要这个?我有一台黑白激光打印机和一台喷墨打印机。
我喜欢使用黑白激光打印机打印文本,然后将打印好的纸张放入喷墨打印机中,以便打印出完美的彩色图片。
或者还有其他可能性?
答案1
所以你想
“...知道如何导出 PDF 吗?在应该显示图形的位置只有空白区域?(反之亦然)”
嗯,我不知道如何直接到达那个点。但我知道一条有三个后门的绕行路线,可以让你到达你想要的地方:
一、绕行路线:正常导出为 PDF。结果将是不图形应该在的地方是空白。不,图形应该在的地方是图形。文本加矢量应该在的地方是文本加矢量……
二、第一个后门:确保您安装了 Ghostscript 版本 v9.16 或更新版本。然后运行:
gs -o onlytext.pdf -sDEVICE=pdfwrite -dFILTERIMAGE -dFILTERVECTOR input.pdf
该
-dFILTERIMAGE
参数将删除所有栅格PDF 中的图像。该-dFILTERVECTOR
参数将从 PDF 中删除所有矢量图或其他线条图。剩下的是所有页面上的所有文本组件。三、第二个后门:使用相同的 Ghostscript 并运行:
gs -o onlyimage.pdf -sDEVICE=pdfwrite -dFILTERTEXT -dFILTERVECTOR input.pdf
此
-dFILTERTEXT
参数将从 PDF 中删除所有文本部分。-dFILTERVECTOR
您已经熟悉此参数……剩下的是所有页面上的光栅图像组件。四、第三个后门:再次运行 Ghostscript:
gs -o onlyvector.pdf -sDEVICE=pdfwrite -dFILTERTEXT -dFILTERIMAGE input.pdf
你猜这是做什么的?剩下的只是所有页面上的矢量组件。
当然,您也可以只使用其中一个参数从 PDF 中删除一种元素类型并保留另外两种。
示例输出
以下是我用来演示选项的示例文档。诚然,该文档不是用 LaTeX 创建的,所以请耐心等待...
原始 PDF 页面的屏幕截图包含“图像”、“矢量”和“文本”元素。
运行以下 6 个命令将创建剩余内容的所有 6 种可能的变体:
gs -o noIMG.pdf -sDEVICE=pdfwrite -dFILTERIMAGE 输入.pdf gs -o noTXT.pdf -sDEVICE=pdfwrite -dFILTERTEXT 输入.pdf gs -o noVCTR.pdf -sDEVICE=pdfwrite -dFILTERVECTOR 输入.pdf gs -o onlyTXT.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERIMAGE 输入.pdf gs -o onlyIMG.pdf -sDEVICE=pdfwrite -dFILTERVECTOR -dFILTERTEXT 输入.pdf gs -o onlyVCT.pdf -sDEVICE=pdfwrite -dFILTERIMAGE -dFILTERTEXT 输入.pdf
下图说明了结果:
顶行,从左至右:删除所有“文本”;删除所有“图像”;删除所有“矢量”。最下面一行,从左至右:仅保留“文本”;仅保留“图像”;仅保留“矢量”。