我正在使用Perl Magick,它是 Image Magick 的 Perl 模块,用于将图像从 GIF 和 PNG 转换为 JPEG。在我尝试转换具有透明背景的图像之前,一切正常。
Resize() 函数的默认行为是使用黑色,这会破坏我们尝试转换的图像。我想将默认背景颜色更改为白色,但不知道该怎么做。
如果您在命令行上使用 Image Magick,您可以使用以下方法更改背景:
convert image.gif -background \#FFFFFF -flatten image.jpg
这是我用来调整图像大小和转换图像的 perl 代码:
use Image::Magick;
my $image = Image::Magick->new();
$image->Read("input.png");
$image->Resize(geometry=>'500x');
$image->Write("output.jpg");
我尝试了以下方法以使其正常工作,但无济于事:
use Image::Magick;
my $image = Image::Magick->new();
$image->Read("input.png");
$image->Set(background => 'white');
$image->Flatten();
$image->Resize(geometry=>'500x');
$image->Write("output.jpg");
并且:
use Image::Magick;
my $image = Image::Magick->new();
$image->Read("input.png");
$image->Resize(geometry=>'500x',background=>'white');
$image->Write("output.jpg");
对于如何为 Perl Magick Resize() 方法成功设置默认背景颜色的任何帮助,我将不胜感激。在此先感谢您的帮助!