仅从pdf中删除彩色文本的重影脚本

2024-10-01 00:15:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在阅读PDF文件。我想删除我尝试过的任何彩色文本(即只留下黑色文本和图像)

gs -o no-more-texts.pdf -sDEVICE=pdfwrite -dFILTERTEXT   Original.pdf

它成功地删除了所有文本,并保留了完整的图像,如何修改gs命令以仅删除彩色文本(红色、蓝色…)

如果有其他模块能够做到这一点,我愿意接受建议


Tags: 文件no图像文本gspdfmore彩色
1条回答
网友
1楼 · 发布于 2024-10-01 00:15:42

执行此操作的设备没有该功能,因此您不能修改Ghostscript命令行以执行您想要的操作

在Ghostscript中有三种方法可以解决这个问题

  • 您可以修改用PostScript编写的PDF解释器
  • 您可以修改pdfwrite设备,它是用C编写的
  • 您可以修改过滤设备,它也是用C编写的
不管你使用哪种工具,都需要考虑一些问题。首先,你所说的“彩色文本”或“黑色文本和图像”到底是什么意思

PDF规范允许在各种不同的颜色空间中指定颜色。Gray、RGB、CMYK、Lab、CalGray、CalRGB、ICCBase、Separation、DeviceN此外,还有索引颜色空间,可能具有任何先前空间的基础空间和图案颜色空间

<> P>你会在这些空间里考虑什么“黑”?很明显,DeviceGray很简单,0是黑色,其他任何东西都是灰色,但是RGB呢?你只考虑0、0、0为黑色吗?如果这是一个基于ICC的空间呢

文本可以有两种颜色,一种笔划和一种填充颜色,并且可以不同地指定它们。它们甚至可以在不同的颜色空间中指定。你需要考虑一下你打算如何处理这件事

相关问题 更多 >