如何用ImageMagick为图片添加自模糊边框以放大图像?
解决ImageMagick添加模糊边框放大图片的问题
你的命令问题出在步骤顺序错误和不必要的-trim参数:-trim会自动裁剪掉透明的扩展区域,导致最终结果回到原图尺寸;而且直接对扩展后的画布模糊,透明区域不会产生模糊效果,达不到预期。
正确的思路是先生成模糊的背景层,再将原图居中合成到背景上,以下是两种常用实现方式:
方式一:按比例整体放大并添加模糊边框
适合需要将原图整体放大到指定比例(比如200%),同时用模糊的原图扩展作为边框的场景:
convert original.png \( +clone -resize 200x200% -blur 0x20 \) +swap -gravity center -composite result.png
参数说明:
\( +clone -resize 200x200% -blur 0x20 \):克隆原图,将其放大到200%后进行模糊处理(0x20中的20是模糊半径,数值越大模糊程度越高,可按需调整)+swap:交换模糊背景层与原图的顺序,让背景层处于底层-gravity center -composite:将原图居中合成到模糊背景层上
方式二:添加指定宽度的模糊边框
适合需要给原图添加固定宽度模糊边框的场景,比如添加100像素宽的模糊边框:
convert original.png \( +clone -border 100x100 -blur 0x20 \) +swap -gravity center -composite result.png
参数说明:
-border 100x100:给克隆的原图添加100像素宽的边框(边框由原图边缘像素扩展生成)- 后续的模糊、合成逻辑与方式一一致,调整
100x100的数值可以改变边框宽度
内容的提问来源于stack exchange,提问作者alexs77
相关产品推荐
相关产品推荐

