quanwei
2025-11-03 ef5d748e3e3331bd20d4065c33e7867c2637d1db
admin/app/common/service/business/Poster.php
@@ -253,10 +253,17 @@
        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);
    }
    /**
@@ -529,9 +536,11 @@
     * @return array
     */
    private function SizeLeftTop($fontSize,$left,$top){
        $data[0] = $fontSize * 0.76;
        $data[1]  = $left;
        $data[2]  = $top + $fontSize;
        // 正确的px到pt转换系数:1px = 0.75pt
        // 使用0.75而不是0.76以确保字体大小显示准确
        $data[0] = $fontSize * 0.75;
        $data[1]  = (float)$left;
        $data[2]  = (float)$top + $fontSize;
        return $data;
    }