| | |
| | | imagesavealpha($targetImage, true); |
| | | $bg = imagecolorallocatealpha($targetImage, 255, 255, 255, 127); |
| | | imagefill($targetImage, 0, 0, $bg); |
| | | imagecopyresampled($targetImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height); |
| | | imagepng($targetImage, $imageUrl,0); // 根据需要选择合适的函数(如imagepng、imagegif等) |
| | | imagecopyresampled($targetImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height); // 保存时使用最高质量 |
| | | $ext = pathinfo($imageUrl, PATHINFO_EXTENSION); |
| | | if ($ext == 'png'){ |
| | | imagepng($targetImage, $imageUrl,0); // 根据需要选择合适的函数(如imagepng、imagegif等) |
| | | }else{ |
| | | imagejpeg($targetImage, $imageUrl,100); |
| | | } |
| | | |
| | | // 清理内存 |
| | | imagedestroy($targetImage); |
| | | imagedestroy($image); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return array |
| | | */ |
| | | private function SizeLeftTop($fontSize,$left,$top){ |
| | | $data[0] = $fontSize * 0.76; |
| | | // 正确的px到pt转换系数:1px = 0.75pt |
| | | // 使用0.75而不是0.76以确保字体大小显示准确 |
| | | $data[0] = $fontSize * 0.75; |
| | | $data[1] = $left; |
| | | $data[2] = $top + $fontSize; |
| | | return $data; |