- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个带透明边框的动画 gif
图像。我需要调整它的大小。
在调整大小之前,我使用 Magick::coalesceImages
函数,在调整图像大小之后,我使用 Magick::writeImages
函数收集所有的 gif
重新组合成一张图片。
问题是输出调整大小后的图像文件大小比原始文件大,因为原始动画 gif
有透明帧,而新调整大小的 gif
没有有任何透明框架。
我在 www.imagemagick.org 上阅读了有关帧优化的内容另外我可以在 www.graphicsmagick.org 上看到gifDisposeMethod
函数。
我的问题是,如何使调整大小的动画 gif
图像使用透明帧并避免增加图像的 KBytes
大小?
最佳答案
好吧,我找到了要走的路:
在调整动画 gif
大小时,使用 Magick::coalesceImages()
不是最好的方法...
相反,我根据百分比大小调整而不是绝对大小调整,同时跳过 Magick::coalesceImages()
调用。
例如,假设我的原始动画 gif
是 300x300,我想将其调整为 150x150,我将执行以下操作:
Magick::Blob
中的图像这样我们就不会增加每个帧的大小,因为我们没有使用 Magick::coalesceImages()
函数,而是根据其原始大小调整每个帧的大小,所以我们没有框架透明度的任何问题。
关于c++ - 使用 GraphicsMagick 调整动画 GIF 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098441/
根据GraphicsMagick man page我可以使用 -crop 从一个图像创建多个图块没有偏移: If the x and y offsets are omitted, a set of t
我想转换一组文件,但不覆盖现有文件。如何使用 mogrify 指定最终文件格式?例如firstpic.png -> firstpic-thumbnail.png、secondpic.png -> se
我想将输入的 8 位 PNG 图像转换为 8 位。 我试过使用 GraphicsMagick。但我不知道如何在 GraphicsMagick 中转换 png8。 当我这样使用命令时: gm 转换 so
我正在使用GraphicsMagick for node并尝试在“乌尔都语/阿拉伯语”的图像上绘制文本,该文本“??”,文本正在输出图像上绘制,但它是“从左到右”绘制的,而它必须是“从右到左”作为阿拉
我有一系列具有透明背景的 PNG 图像,我想将它们叠加到也具有透明背景的目标 PNG 图像上。为了论证起见,我们假设这一系列图像是: 源图片:img1.png、img2.png、img3.png 目标
我正在尝试使用 graphicsmagick 调整图像的大小。 我需要它适合特定的宽度和高度。但是,使用以下命令:-resize 400x200 它会调整大小直到图像达到宽度或高度属性之一,而我需要它
GM has build option quantum which defines the bitdepth to use when reading an image. Building GM wit
我正在尝试使用 GM 向现有图像添加文本,或者作为最后的手段创建一个带有文本的新图像,然后我可以将其与原始图像合成。出于某种原因,我似乎无法开始工作...... 我在 Windows 上使用 GM 1
我目前正在构建一个 MEAN 应用程序,我当前正在处理的部分涉及图像上传。我正在尝试使用GraphicsMagick for Node但我并没有真正取得任何成功。以下是我的图像上传 POST 请求(按
我尝试使用 cfs:graphicsmagick 包生成缩略图,但生成的只是一个空图像。 当我启动服务器时,一切看起来都很好: I20150108-10:43:14.698(-8)? => Graph
我在使用 GraphicsMagick 时遇到问题。我正在重新排列图像中的像素并尝试保存它,但生成的图像始终相同。如何让它在保存前更新图像? 这是我的代码: PixelPacket *write_pi
我发现 (C) API 非常复杂,有很多函数听起来像是在做同样的事情。 blobimageregistrystreams>之间的关系让我很困惑。 有没有人找到教程或者可以阐明 GraphicsMagi
我正在这样做 gm(jpgName).setFormat('jpg') .resize(160,158) .compress('JPEG') .write(fs.createWrite
我正在使用 mupx 部署 meteor 构建。 Graphicsmagick 安装在系统上(以及 imagemagick),两者都在 ubuntu 14.04 上使用 apt-get。尝试转换图像时
我需要获取图像的特定裁剪并将其放在另一个图像的某个位置并调整大小。 我可以在一个命令中裁剪第一个图像并将其保存到一个文件中,然后我可以在另一个命令中合成这两个图像。 但是,我想在一个命令中完成它 -
在尝试了我可能想到的所有命令组合之后,我仍然无法让它工作。 我有一个可以改变大小的大图像:Logo.png我有一张“已知”尺寸的小图片:Wallpaper.png 我想让 Logo 出现在墙纸的左下角
我已经在 OSX 10.9 上安装了 GM。执行gm version打印以下内容: GraphicsMagick 1.3.18 2013-03-10 Q8 http://www.GraphicsMag
我设置了以下函数来捕获上传的图像,转换它们并将它们写入服务器。如何重命名转换后的文件? 目前,该函数获取上传的图像并保存图像的一个版本。 目标: 根据图像大小保存上传图像的多个版本。 附加文件名和图像
如何使用 GraphicsMagick 从图像中删除背景颜色?我需要从图像中删除 rgb(255,255,255) 和 rgb(254,254,254) 颜色并将它们替换为透明度。 谢谢。 最佳答案
我正在使用 QT 开发图像处理工具。我是 QT 和 graphicsmagick(magick++) c++ 库的新手。我计划使用 C++ 作为我的开发语言。谁能建议我如何获取 graphicsmag
我是一名优秀的程序员,十分优秀!