pdf - 使用 Imagemagick 在 PDF 中居中 .jpg 图像?

标签 pdf imagemagick jpeg center

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

我正在运行以下命令(作为 Overlaying Images with ImageMagick 的修改):

# 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直接在 A4 PDF 页面中居中 JPG 图像?

    非常感谢您的任何答案,
    干杯!

    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
    

    ...然后它将失败。然而,事实证明:“if you change -extent to 50x50, then play with -gravity, you'll see changes”——除了,问题是:你改变的程度,图像的程度——还是最终 PDF 的程度?

    好吧,事实证明 - 它是最终 PDF 的范围...找到该大小为 convert看到了,查看页面:Magick::Geometry - 但是,请注意,“A4+43+43>”之类的“Postscript 页面大小规范”会导致 convert在这种情况下崩溃......但至少可以从页面复制大小(595x842)的相应数字;最后这有效:
    convert -page A4 -gravity center -resize 595x842 -extent 595x842 red.jpg out.pdf
    

    ...实际上,-extent部分并不真正需要 - -resize部分是展示大图的重要部分。

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

    编辑:相关:
  • ImageMagick Gravity parameter - Stack Overflow
  • ImageMagick and Geometry Issue - resizing with > - Stack Overflow
  • command line - Resizing and croping images to an aspect ratio of 6x4 with width of 1024 pixels - Unix and Linux - Stack Exchange
  • conversion - using imagemagick or ghostscript (or something) to scale PDF to fit page? - Stack Overflow
  • 最佳答案

    以下内容非常适合我:

    convert -page A4 red.jpg  -gravity center -format pdf out.pdf
    

    如果您更改"file"的顺序,它也可以:
    convert -page A4 red.jpg xc:white -gravity center -composite -format pdf out.pdf
    

    我认为 red.jpg 居中,但白色绘制在它上面。

    关于pdf - 使用 Imagemagick 在 PDF 中居中 .jpg 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7590649/

    相关文章:

    asp.net-mvc - 如何将 FileContentResult 写入磁盘?

    php - 如何在页面底部添加页脚 wkhtmltopdf

    python - 在python中从PDF中提取图像

    python - 通过 Picasa API 上传图片时如何防止 JPEG 压缩?

    c++ - DCT 的输入值是多少?

    pdf - 根据在 HTML 页面上单击的链接打开带有突出显示的单词的 PDF

    .net - 扩展 ImageMagickNet

    php - 如何编写 PHP 工作进程代码?

    php - Imagemagick convert -fill 不会改变特定调色板区域的边缘

    安卓工作室 JNI : cannot compile JPEG c-library