2016-09-22 57 views
1

我们的目标是让用户上传PDF并在左上角放置一个“邮票”(带有背景颜色+文本的框)。 “邮票”部分运作良好,但只要我们通过ImageMagick传递PDF,我们立即就会遇到质量问题 - 特别是当原始PDF已经有某种文物时。使用ImageMagick修改PDF时摆脱质量问题

这是我的来源PDF(为了保护隐私而添加的黑色区域)的屏幕截图。 https://dl.dropboxusercontent.com/u/6271307/Screen%20Shot%202016-09-22%20at%2015.18.49.png 您可以看到质量不是很好,因为它是由复印机扫描的。

通过ImageMagick的结果进行处理后看起来是这样的: https://dl.dropboxusercontent.com/u/6271307/Screen%20Shot%202016-09-22%20at%2015.19.15.png

这是正在发出的呼吁:

'/usr/bin/convert' +profile '*' -compress jpeg -quality 90 -density 180 -pointsize 10 -fill 'rgba(220, 220, 220, 0.75)' -stroke 'rgba(220, 220, 220, 0.75)' -draw 'rectangle 40,20,491,100' -stroke '#000000' -font Courier -draw "text 48,47 'Vermittlernummer Gesellschaft'" -draw "text 48,81 '70_202_3297'" mysource.pdf mytarget.pdf 
  • 如果我离开了“-compress JPEG -quality 90“参数的结果看起来相同,只是文件大小有点大。
  • 如果我离开了“-density 180”参数的结果只是看起来差很多

什么选择的ImageMagick的可以帮助我得到一个更好的结果呢?

回答

0

尝试先将您的PDF转换为PNG。我这样说的原因是因为我下载了你的PNG图片:

https://dl.dropboxusercontent.com/u/6271307/Screen%20Shot%202016-09-22%20at%2015.18.49.png

就跑代码:

convert -density 180 +profile '*' -compress jpeg -quality 90 -pointsize 10 -fill 'rgba(220, 220, 220, 0.75)' -stroke 'rgba(220, 220, 220, 0.75)' -draw 'rectangle 40,20,491,100' -stroke '#000000' -font Courier -draw "text 48,47 'Vermittlernummer Gesellschaft'" -draw "text 48,81 '70_202_3297'" test.png mytarget.png 

,得到了这样的结果:

enter image description here

哪在我看来很好。我使用你的代码输出了一个.png,但pdf看起来一样好 - StackOverflow似乎不允许pdf上传。

让我知道如果这不起作用!

干杯。

+0

谢谢你的回答。我试图在第一步将PDF转换为PNG,但之后我已经遇到了这些问题。所以这个问题似乎与写作的格式无关,而与“阅读”部分相关。 – smichaelsen

+0

你尝试在转换中设置-density吗?你可以在评论中发布你的代码或更新你的问题吗? –