我正在尝试使用GD构建图像。这个建筑的一部分是为图像添加一个带有透明空间的PNG。我正在使用2台不同的服务器。
服务器1,可以完美地构建映像,具有以下配置: PHP 5.4.21 启用了GD 2.1.0 PNG支持(使用libPNG)
服务器2,它有一个问题: php 5.2.17 启用GD 2.0.34 PNG支持(无libPNG)
第二台服务器正在扭曲图像,因此它看起来像这样:
以下是原文:
它保持正确的高度,但宽度失真并出现线条。
我的原始代码如下:
$et_marker = @imagecreatefrompng('images/et_marker.png');
...
imagecopy($chart, $et_marker, $left, $mk_top, 0, 0, imagesx($et_marker), imagesy($et_marker));
然后我想也许如果我将PNG转换为TrueColor图像会更好,所以我将代码更改为:
$et_marker_raw = @imagecreatefrompng('images/et_marker.png');
$width = imagesx($et_marker_raw);
$height = imagesy($et_marker_raw);
$et_marker = imagecreatetruecolor($width, $height);
$bg_col = imagecolorallocatealpha($et_marker, 10, 10, 10, 127);
imagefill($et_marker, 0, 0, $bg_col);
imagecopyresampled($et_marker, $et_marker_raw, 0, 0, 0, 0, $width, $height, $width, $height);
这是我唯一的想法。
我找不到足够的有关libPNG的信息来确定是否存在这个问题。
此处不能使用Imagemagick。
如何加载此PNG,使其不像上面的示例那样扭曲?