Php 比例水印
我有水印,我想适应图像 我希望水印始终位于左上角,与图像相比,它是非常好的10% 我试着用这个Php 比例水印,php,Php,我有水印,我想适应图像 我希望水印始终位于左上角,与图像相比,它是非常好的10% 我试着用这个 $scale = min( $watermark_o_width / $imageSize[0], $watermark_o_height / $imageSize[1] ); $newWatermarkWidth = $watermark_o_width * $scale; $newWatermarkHeight = $watermark_o_height * $scale; 但是尺寸不
$scale = min(
$watermark_o_width / $imageSize[0], $watermark_o_height / $imageSize[1]
);
$newWatermarkWidth = $watermark_o_width * $scale;
$newWatermarkHeight = $watermark_o_height * $scale;
但是尺寸不对 获取水印比率:
$watermark_ratio = $watermark_old_width / $watermark_old_height;
确保水印宽度为图像宽度的10%:
$watermark_new_width = $image_width * 0.1;
计算所需的水印高度:
$watermark_new_height = $watermark_new_width / $watermark_ratio;
如果要计算另一个轴,只需使用
$watermark_new_height = $image_height * 0.1;
然后计算所需的宽度:
$watermark_new_width = $watermark_new_height * $watermark_ratio;
到底哪里出了问题?你所说的错误是什么意思?你至少需要在一个轴上计算图像大小的10%。另一个必须保持动态,除非你能忍受通常没有人想要的失真水印。在小图像中,水印非常大,在大图像中,水印非常小,并且我希望我的水印具有最大domension。你需要提供更多信息。原始图像的大小;水印的大小;出现的大小;以及上面的计算结果。你用什么库来进行图像处理?GD?ImageMagick?GD使用imagecopyresized和ImageCopyResample在GD方法调用中注意质量参数。示例:imagejpeg$anything,NULL,90;90是以百分比表示的质量。了解如何将质量参数应用于正在使用的函数。例如,在小图像中300x300松散质量在大图像中,如800*600我的水印是好的$Watermark=imagecreatefrompng'images/Watermark.png';ImageAlpha$watermark,true;imagesavealpha$水印,为真;不变