标签: imagemagick-convert

可以curl将远程url中的图像下载到缓存中,然后使用管道进行转换吗?

我有一些图片网址,我想下载它们。但这些文件具有不同的后缀,例如.jpg.png.bmp。我还想把它们改成统一的格式,比如.JPEG. 所以我想使用curl命令将图像下载到内存缓存中,然后使用包convert中的命令ImageMagick将数据格式转换为.JPEG格式。有没有办法完成这项工作?

    `curl http://aa.com/a.jpg`
    `convert a.jpg 00001.JPEG`
    `rm a.jpg`
    `curl http://bb.com/b.png`
    `convert b.png 00002.JPEG`
    `rm b.png`
Run Code Online (Sandbox Code Playgroud)

我想简化这个过程,让临时文件保存到缓存中,然后不直接保存到磁盘中,这样可以减轻磁盘的负担。有没有办法利用pipeline技术来完成这项工作?例如

    `curl http://aa.com/a.jpg | convert ... | ...`
Run Code Online (Sandbox Code Playgroud)

提前致谢。

shell curl pipeline imagemagick imagemagick-convert

2
推荐指数
1
解决办法
2173
查看次数

ImageMagick 更改图像宽度和高度

我正在使用 ImageMagick 通过使用下面的命令行选项来调整图像分辨率

convert abc.png -set units PixelsPerInch -density 75 abc_a.png

我需要这个:如果任何图像的宽度超过 300高度超过 100,我想将其转换为宽度 300 宽度和 100 高度,并更改为高于 dpi(即 75dpi)。

谁可以帮我这个事?

image imagemagick imagemagick-convert

2
推荐指数
1
解决办法
3458
查看次数

ImageMagick SVG 到 PNG 的转换去除了渐变

我正在尝试允许用户通过 CMS 上传 SVG 图像并生成后备 PNG,以便当 CMS 在前端显示内容时,会为旧浏览器显示 PNG 后备。

问题是当我上传 SVG 时,PNG 输出有点偏离,渐变似乎丢失,如下面的屏幕截图所示。

左边的 SVG 右边的 PNG

在这些测试中,我只是使用 ImageMagick 命令行,如下所示,但已经使用 Imagick 通过 CMS 上传进行了尝试,结果相同。

convert gallardo.svg gallardo.png
Run Code Online (Sandbox Code Playgroud)

Imagick 版本按照其他线程的建议将背景设置为透明,但 PNG 输出与命令行相同。

class ResampleSvgUpload extends DataExtension {

    function onAfterUpload() {
        if($this->isSvg()){
            $this->resample();
        }
    }

    function onAfterWrite() {
        if($this->isSvg()){
            $this->resample();
        }
    }

    function isSvg() {
        $extension = strtolower($this->owner->getExtension());
        return ($extension == 'svg') ? true : false;
    }

    function resample() {
        $original = $this->owner->getFullPath();
        $resampled = $original . '.png';    
        $imagick = new Imagick($original);
        $imagick->setBackgroundColor(new …
Run Code Online (Sandbox Code Playgroud)

php svg imagemagick imagick imagemagick-convert

2
推荐指数
1
解决办法
1164
查看次数

ImageMagick,用不透明白色替换半透明白色

我有一个具有完全透明背景和半透明白色前景的图标。我想让前景完全不透明,可以用 ImageMagick 实现吗?

我尝试过使用这些方法的不同组合;

http://www.imagemagick.org/discourse-server/viewtopic.php?t=12619

http://www.imagemagick.org/discourse-server/viewtopic.php?t=18196

http://www.imagemagick.org/discourse-server/viewtopic.php?t=16718

,但无法产生想要的结果。有小费吗?

png transparency image imagemagick imagemagick-convert

2
推荐指数
1
解决办法
1909
查看次数

我如何使用 ImageMagick 向该图像添加 Alpha 通道

我尝试向该图像添加 Alpha 通道没有 Alpha 通道的图像使用这个命令

convert az.png -alpha set temp.png
Run Code Online (Sandbox Code Playgroud)

生成的 temp.png 仍然没有 Alpha 通道。我究竟做错了什么?

该图像是从http://flagpedia.net/data/flags/mini/az.png获得的

png imagemagick-convert

2
推荐指数
1
解决办法
3246
查看次数

将图像A的一圈复制到图像B中

我有两张图片:

  • a.jpg
  • b.jpg

两个图像都是正方形(100x100 像素)。我想从 image 中切出一个半径为 50 的圆a.jpg并将其粘贴到 image的中间b.jpg。我想将结果保存在c.jpg.

如何使用 Linux 命令行工具执行此操作?我需要在 shell 脚本中完成它。

bash imagemagick gimp imagemagick-convert

2
推荐指数
1
解决办法
589
查看次数

imagemagick 转换:如何判断图像是否需要旋转?

在我的 rails 应用程序中,我让用户上传图像以用作他们制作的资源的缩略图。我使用 imagemagick 的 convert 命令进行所有图像处理:我转换为 jpg,将其转换为 800x600px,然后制作一些较小的缩略图版本。

这一切正常。问题是一些从我的 iPhone 上掉下来的图像,例如,有错误的方向。我的桌面似乎以不同的方式处理这个问题:当我在文件选择器对话框中看到图像的小缩略图时,它的方向错误,但是如果我在图像查看工具中打开它,它的方向是正确的。

大概有一些标题或元数据或图像文件中的某些内容告诉应用程序它需要旋转文件?我认为我需要在对图像进行任何其他处理之前阅读此内容,以便我可以在执行所有其他操作之前旋转图像(如有必要)。

谁能告诉我如何在 Ubuntu 服务器上的 bash 中做到这一点?

谢谢,马克斯

编辑:有点谷歌搜索表明这是与 EXIF 标头...

bash image imagemagick rotation imagemagick-convert

2
推荐指数
1
解决办法
1723
查看次数

将一堆图像从 svg 转换为 png

我需要将文件夹中的所有图像从 svg 转换为 png。假设图像被称为 test1.svg、test2.svg、...、testn.svg。使用以下脚本:

for i in *.svg
do
    convert "$i" PNG24:"$i".png
done
Run Code Online (Sandbox Code Playgroud)

正确完成工作,图像被称为 test1.svg.png, test2.svg.png, ... , testn.svg.png。我的问题是:

1) 是否可以将输出图像命名为 test1.png, test2.png, ... , testn.png,实质上是从名称中删除“svg”部分?

2)是否可以将它们直接发送到其他目录?

谢谢!

svg png imagemagick imagemagick-convert

2
推荐指数
1
解决办法
719
查看次数

使用图像魔法将整个文件夹转换为灰度?

我正在尝试使用图像魔法将整个文件夹转换为灰度。

convert *.jpg -colorspace Gray -separate -average
Run Code Online (Sandbox Code Playgroud)

遇到此错误:

convert:  `-average' @ error/convert.c/ConvertImageCommand/3290.
Run Code Online (Sandbox Code Playgroud)

什么是正确的命令?

image imagemagick imagemagick-convert

2
推荐指数
1
解决办法
1543
查看次数

mogrify 带标题(imagemagick 或 graphicsmagick)

我正在尝试对图像执行多个操作(调整大小、裁剪、在底部添加一些空白区域)。

然后我试图在那个空白区域添加一个标题。

我想使用mogrify这样我可以编辑现有文件,而不是创建一个新文件(它将是大量的)。

这给了我一个错误,我不太确定如何做到这一点。不过它确实适用convert

magick mogrify -resize 300x -crop 300x200+0+50 -extent 300x290 input.jpg -size 300x90 -gravity SouthWest -font "Arial" -pointsize 24 -fill black caption:'dis some really long shit that goes on 3 lines onmg how will it ever the' -composite -quality 100
Run Code Online (Sandbox Code Playgroud)

imagemagick graphicsmagick imagemagick-convert

2
推荐指数
1
解决办法
673
查看次数