Image MagickのPerlモジュールであるPerl Magickを使用して、GIFおよびPNGからJPEGに画像を変換しています。私は透明な背景でイメージを変換しようとするまで、すべてが完璧に動作します。Perl Magick画像変換の背景色を設定する
Resize()関数のデフォルトの動作は、変換しようとしている画像を破壊する黒を使用することです。代わりに、デフォルトの背景色を白に変更して、それを行う方法を理解できません。
あなたは、コマンドライン上の画像魔術を使用している場合は、使用して背景を変更することができます。
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");
も:
Perl Magick Resize()メソッドのデフォルトの背景色を正しく設定する方法を理解していただきありがとうございます。あなたの助けを前もってありがとう!
私もそれを試しました。どちらもうまくいかないようです。画像のサイズを変更した後も、黒い背景が残っています。他のアイデア? –