新版ImageMagick中“-write inline”命令失效问题求助
解决新版ImageMagick中inline输出Base64图片报错的问题
问题根源
新版ImageMagick(6.9.12及以上、7.x系列)调整了inline格式的输出语法,旧写法inline:png:-不再被支持,导致抛出image type not supported错误。
修正方案
将原命令中的inline:png:-替换为png:inline:-,同时可以简化重复的clone/delete逻辑,用更简洁的写法实现批量输出Base64编码的裁剪图片:
ImageMagick 6 版本命令
convert -pointsize 240 label:"Test" -crop 4x3@ +adjoin -write png:inline:- null:
ImageMagick 7 版本命令
magick -pointsize 240 label:"Test" -crop 4x3@ +adjoin -write png:inline:- null:
说明
png:inline:-是新版支持的语法,格式为[图像格式]:inline:-,表示将指定格式的图片以Base64编码输出到标准输出+adjoin参数让裁剪后的每块图片作为独立输出对象,配合-write可以一次性输出所有裁剪块的Base64数据- 最后的
null:用于终止命令流,避免额外的输出问题
内容的提问来源于stack exchange,提问作者Red Shen
相关产品推荐
相关产品推荐

