java调用imagemagick_使用Imagemagick将.jpg图像置于PDF中心?

我正在使用 convert 版本ImageMagick 6.6.2-6 2011-03-16,我想用它从图像生成A4 pdf,其中图像将是非缩放和居中的 .

# generate a 100x100 JPG with just red color

convert -size 100x100 xc:red red.jpg

# generate PDF from JPG

convert -page A4 xc:white red.jpg -gravity center -composite -format pdf out.pdf

......但是,基本上什么都没显示? png图像也是如此......

注意

只是' convert -page A4 red.jpg out.pdf '有效 - 但图像不居中; ( -gravity center 导致图像无法显示)

如果图像是png,' convert -page A4 -gravity center red.png out.pdf '确实可以正常工作

...但是,我希望 convert 直接嵌入JPEG流的内容 - 因此,我不想先将JPG转换为PNG .

那么,是否可以使用 convert 将JPG图像直接置于A4 PDF页面中心?

非常感谢任何答案,

干杯!

EDIT2:@John Keyes的答案适用于上面的例子;图像比PDF大小“更小” - 但是如果图像更大,例如:

$ convert -size 1228x1706 -background \#f44 -rotate 45 gradient:\#f00-\#fff red.jpg

$ identify red.jpg

red.jpg JPEG 2075x2075 2075x2075+0+0 8-bit DirectClass 120KB 0.000u 0:00.000

好吧,事实证明 - 它是最终PDF的范围...要找到该大小 convert 看到它,检查页面:Magick::Geometry - 但是,请注意"Postscript page size specifications"像“ A4+43+43> ”不幸,导致 convert 崩溃context ...但至少可以从页面复制大小(595x842)的相应数字;最后这个工作:

convert -page A4 -gravity center -resize 595x842 -extent 595x842 red.jpg out.pdf

......实际上, -extent 部分并不是真正需要的 - -resize 部分是重要的一部分,可以显示大图像 .

但是,这里的问题是所包含的图像似乎是重新采样的 - 但是,我只是想显示缩放以使其适合页面,但是否则会将原始JPG流插入文件中..所以我猜猜问题仍然是部分开放的:)

编辑:相关:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值