【发布时间】:2016-12-28 02:13:41
【问题描述】:
这只发生在实时服务器上。在多重开发服务器上,图像正在按预期创建。
直播: 红帽
$ php --version
PHP 5.2.6 (cli) (built: May 16 2008 21:56:34)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
GD 支持 => 启用 GD 版本 => 捆绑(2.0.34 兼容)
开发: Ubuntu 8
$ php --version
PHP 5.2.4-2ubuntu5.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 23 2008 06:44:49)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
GD 支持 => 启用 GD 版本 => 2.0 或更高版本
<?php
$image = imagecreatetruecolor($width, $height);
// Colors in RGB
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
imagefilledrectangle($image, 0, 0, $width, $height, $white);
imagettftext($image, $fontSize, 0, 0, 50, $black, $font, $text);
imagegif($image, $file_path);
?>
在一个完美的世界中,我希望实时服务器和开发服务器运行相同的发行版,但实时服务器必须是 Red Hat。
我的问题是,有没有人知道使用 GD 的捆绑版本会导致图像的最右侧部分被截断的具体差异?
编辑:我没有内存不足。日志文件中没有生成错误。就 php 而言,图像正在正确生成。这就是为什么我认为捆绑版本是 GD 特有的问题。
【问题讨论】:
-
如果实时服务器必须是 Red Hat,为什么开发服务器不能是 Red Hat(或 CentOS,如果问题是支持合同)?
-
因为我是在我的个人机器上开发的。设置 Redhat 盒子对我来说并非完全不可能,但我宁愿不花时间在上面。
-
开发盒与生产盒尽可能匹配的好处通常是值得的。您可以随时将其设置为虚拟机。
-
非常正确。让我们假设我已经设置了一个运行 Redhat 的 VM,其软件版本与实时服务器具有的所有相同的软件版本。现在是什么导致了这个问题?这是 GD 捆绑版本中的错误吗?
-
$font 和 $fontSize 分别设置为什么?你只是在发送空白变量吗?