有没有办法增加通过扫描黑白复印件创建的 PDF 的对比度

有没有办法增加通过扫描黑白复印件创建的 PDF 的对比度

我尝试打开“辅助功能”菜单并选择黑色背景和绿色字体,但如果文档最初是在黑白模式下扫描的,这似乎不起作用。还有其他方法可以增强 PDF 的对比度吗?

答案1

如果有大量页面,更简单的工具是命令行工具:http://www.imagemagick.org/script/download.php

(ImageMagick 是一个非常流行的图像处理库。)

您必须执行三个步骤。

  1. 将 PDF 页面转换为单独的图像文件。请参阅:将 PDF 转换为高分辨率图像或者使用 ImageMagick 将 PDF 转换为 JPG 图像-如何用 0 填充文件名?

    convert -density 600 your_pdf_filename.pdf  output-%02d.jpg
    
  2. 调整图像质量。如果您只有几页,Photoshop 或GIMP(Photoshop 的免费开源替代品)只需将每个页面导入为图像即可。根据需要更新对比度并保存。有关更多信息,请参阅Gimp:如何消除背景噪音/伪影并增强手写文本或者继续使用 ImageMagick:批量处理文档图像,使其看起来像传真件

    convert output*.jpg -normalize -threshold 80% final-%02d.jpg
    
  3. 如果你想要一份 PDF 文件:

    convert final*.jpg my_new_highcontrast.pdf
    

答案2

我有一个包含大量灰色图像(漫画)的 PDF。因此我使用了以下答案气相色谱,将第二条命令更改为:

convert output.jpg -level 25% output_contrast.jpg

只需改变等级为您提供服务的价值百分比。


观察。

使用 arg-threshold你会得到一个“黑白”图像。但我想保留灰度,这可以通过 arg 实现-level:你保留灰色,让图像具有darkerlighter灰度。


命令顺序如下:

convert your_pdf_filename.pdf output-%02d.jpg
convert output*.jpg -level 25% final-%02d.jpg
convert final*.jpg very_readable.pdf

答案3

如果你想要一个 Python 解决方案:github要点。该脚本将pdf转换为图像,修改其对比度并将其写回pdf。

使用示例

$ python pdf_contrast.py 2.3 -i in.pdf -o out.pdf
Loading pdf in.pdf
Pages: 48
Contrast x2.3: 100%|███████████████████████| 48/48 [00:02<00:00, 18.42pages/s]
Saving pdf to out.pdf

答案4

对于 Windows,我编写了一个批处理文件,.bat当用户将文件拖放到批处理文件上时,系统会自动生成 PDF。(Linux/OSX 系统需要将其转换为 shell 脚本)

首先需要安装 ImageMagick(允许安装程序添加到 PATH 以便magick convert从命令行运行)和 GhostScript。不用担心,它们很容易安装。

这是批处理文件。创建一个pdf_darkener.bat包含以下内容的文件:

@echo off
echo Darkening the pdf at %1 
echo Converting PDF to JPGs...
magick convert -density 500 %1 darken_pdf_preprocess_%%02d.jpg
echo Darkening JPGs...
magick convert darken_pdf_preprocess*.jpg -level 50%%,100%%,0.3 darken_pdf_postprocess_%%02d.jpg
echo Converting JPGs to PDF...
magick convert darken_pdf_postprocess*.jpg darkened.pdf
echo Deleting JPGs...
del darken_pdf_*.jpg
echo Done!
pause

将任何 PDF 文件拖到批处理文件中。等待操作完成(慢速/细节级别由控制density 500,越高 = 像素越多,文件越大,速度越慢)。输出 PDF 将与原始 PDF 位于同一目录中。批处理文件会自行清理,删除处理过程中创建的中间 jpg。

在此处输入图片描述

在此处输入图片描述

请注意,此对比度增加操作由三个数字控制:50%%,100%%,0.3即 50%、90% 和 0.3。根据 ImageMagick 文档,这些数字是 black_level、white_level 和 gamma。black_level 是亮度百分比,低于该百分比时,所有内容都会被映射到纯黑色,反之亦然。Gamma 控制非线性映射对于中间值(1.0 是线性的)。

请在评论部分分享任何改进或有用的修改。

相关内容