我想使用 ImageMagick 将多张图像合并为一张图像。为了更好地解释,我希望结果看起来类似于:

也就是说,我有许多屏幕截图,我想将它们变成一张图像,原始图像叠在一起。
通过谷歌搜索,我遇到了“复合”命令,但我不知道是否,以及在这种情况下如何使用它来获得我想要的结果。
努力寻找好的 Homebrew 文档(或教程)...
与此同时,我需要重新安装与 Homebrew ( brew install imagemagick)一起安装的 ImageMagick并且不确定我是应该首先brew uninstall imagemagick还是继续brew install imagemagick --disable-openmp --force现有的安装?!?
什么--force实际上做?它是否有效地卸载然后使用新参数进行新安装?
这是我到目前为止所做的:
sudo apt-get install imagemagick libmagickcore-dev
Run Code Online (Sandbox Code Playgroud)
这没有抛出任何错误,所以我认为 ImageMagick 安装得很好。然后我尝试安装 gem:
sudo gem install rmagick
Run Code Online (Sandbox Code Playgroud)
这导致了以下错误:
ERROR: Error installing rmagick:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.8 extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for gcc... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.4.9... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... yes
checking for sys/types.h... yes
checking for wand/MagickWand.h... no
Can't install RMagick 2.13.1. Can't find MagickWand.h.
*** extconf.rb failed …Run Code Online (Sandbox Code Playgroud) 我有以下 PDF 文件:http : //www.fmwconcepts.com/misc_tests/pdf_tests/test.pdf
但是当我尝试通过以下方式转换它时:
$ convert test.pdf test.png
Run Code Online (Sandbox Code Playgroud)
我有以下错误:
convert: no images defined `test.png' @ error/convert.c/ConvertImageCommand/3187.
Run Code Online (Sandbox Code Playgroud)
我有以下版本:
$ brew info libpng
libpng: stable 1.6.13 (bottled)
$ brew info libjpeg
jpeg: stable 8d (bottled)
$ brew info imagemagick
imagemagick: stable 6.8.9-7 (bottled), HEAD
http://www.imagemagick.org
/usr/local/Cellar/imagemagick/6.8.9-1 (1432 files, 22M) *
Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/imagemagick.rb
==> Dependencies
Build: xz ?, pkg-config ?
Required: libtool ?
Recommended: jpeg ?, libpng ?, freetype ?
Optional: fontconfig ?, libtiff ?, little-cms ?, …Run Code Online (Sandbox Code Playgroud) 当我尝试使用 Imagemagick 合并两个 .pdf 文件时
convert pdf1.pdf pdf2.pdf temp.pdf
Run Code Online (Sandbox Code Playgroud)
生成的 temp.pdf 文件的分辨率似乎很低。如何保持与源文件中的分辨率相同?
在 GIMP 中有一种非常简单的方法可以做我想做的事。我只安装了德语对话框,但我会尝试翻译它。我说的是转到Picture -> PrintingSize然后调整值X-Resolution,Y-Resolution我知道这些值是所谓的 DPI 值。您还可以选择默认为Pixel/Inch. (在德语中,对话是Bild -> Druckgröße,那里X-Auflösung和Y-Auflösung)
好的,72默认情况下通常有这些值。当我将它们更改为例如300这会导致图像在计算机上保持不变,但是如果我打印它,如果您查看它会更小,但所有细节仍然存在,只是更小 - >它有打印纸的分辨率更高(但尺寸更小......这对我来说很好)。
我在使用 LaTeX 时经常这样做,或者准确地说是pdflatex在最近的 Ubuntu 机器上使用命令。当我手动使用 GIMP 执行上述过程时,一切正常。图像在生成的 PDF 中看起来更小,但打印质量很高。
我想要做的是自动化进入 GIMP 和调整 DPI 值的过程。由于众所周知 ImageMagick 非常出色,并且我将它用于许多其他任务,因此我试图通过此工具实现我的目标。但它并没有做我想要的。
在尝试了很多事情之后,我认为这实际上是我应该成为朋友的命令:
convert input.png -density 300 output.png
Run Code Online (Sandbox Code Playgroud)
这应该将 DPI 设置为 300,因为我可以在网络上的任何地方阅读。它似乎工作。但是当我检查文件时它保持不变(编辑:这是我所期望的,如上所述)。
file input.png output.png
input.png: PNG image data, 611 x 453, 8-bit grayscale, non-interlaced
output.png: PNG image data, 611 x 453, 8-bit …Run Code Online (Sandbox Code Playgroud) convert -append 1.jpg 2.jpg out.jpg
Run Code Online (Sandbox Code Playgroud)
此命令水平附加 1.jpg 和 2.jpg。垂直执行此操作的命令是什么?
我正在使用 ImageMagick 将一组 png 转换为单个 gif。我希望这个 gif 尽可能快地循环播放。
这大约是我期望的输出(由Wikipedia 提供):

这是我实际得到的输出:

在我的浏览器 (Firefox 17) 上,预期的 gif 运行速度是实际 gif 的两倍多。这让我感到惊讶,因为我指定每帧应该有 0 延迟。
首先,我通过分解从维基百科借来的 gif 创建了 36 个 png:
--caution: command generates 36 pngs
convert.exe newton.gif newton_%d.png
Run Code Online (Sandbox Code Playgroud)
然后我习惯于coalesce将 png 重新组合成一个 gif。
convert.exe -dispose none -delay 0 newton_%d.png[0-35] -coalesce output.gif
Run Code Online (Sandbox Code Playgroud)
identify 确认每一帧都没有延迟:
identify.exe -format "%T, " output.gif
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …Run Code Online (Sandbox Code Playgroud) 如何使用 ImageMagick 创建方形/裁剪缩略图?裁剪如下。

imagemagick ×10
conversion ×2
macos ×2
pdf ×2
bash ×1
command-line ×1
gif ×1
gimp ×1
homebrew ×1
linux ×1
mac ×1
osx-lion ×1
resolution ×1
rubygems ×1
ubuntu-10.04 ×1