这是一个仅适用于 PNG 到 JPG 的解决方案。
此代码为 PNG 中的透明区域添加白色背景并将其转换为 JPG。
它有什么作用?
此代码从一个文件夹中获取所有 PNG 图像,将它们转换为具有白色背景的 JPG,然后将它们保存在另一个文件夹中。
<?php
ini_set('max_execution_time', 3000);
$dir = 'transparent/';
$arr = scandir($dir);
for($i=0;$i<count($arr);$i++)
{
if($i==0 || $i==1)
{
}
else{
$input_file = "transparent/".$arr[$i];
$output_file = "White/".str_replace('.png','.jpg',$arr[$i]);
$input = imagecreatefrompng($input_file);
list($width, $height) = getimagesize($input_file);
$output = imagecreatetruecolor($width, $height);
$white = imagecolorallocate($output, 255, 255, 255);
imagefilledrectangle($output, 0, 0, $width, $height, $white);
imagecopy($output, $input, 0, 0, 0, 0, $width, $height);
imagejpeg($output, $output_file);
}
}
?>
它在 PHP 中的图像处理和 GD。
PHP Manual
希望对您有所帮助,您可以随意更改。