PHP:基于字符串生成动态大小的图像

时间:2014-01-25 12:30:43

标签: php string image png

我正在尝试制作一个“按钮生成器”,用于输出带有指定文本的PNG图像。我现在唯一需要做的就是弄清楚如何使按钮与文本长度相比动态调整大小。具体来说,我需要它:

  1. 输出按钮的左半部分(使按钮变圆)。
  2. 检查字符串占用的像素数,并多次输出1像素宽的图像。
  3. 输出按钮的右半部分(可能是左边的一个翻转,并不重要)。
  4. 在正中间输出字符串。
  5. 如果有人能给我一个如何实现这个目标的例子我会非常感激。

2 个答案:

答案 0 :(得分:0)

在Linux上,您可以执行"转换" (来自Image Magick软件包)在回发期间将图像处理到服务器上的内容。你没有指定服务器平台,所以我将把这个留给你:

http://it1.php.net/function.exec

http://www.imagemagick.org/script/command-line-processing.php

答案 1 :(得分:0)

根据文字进行大小调整,您可以使用imagettfbbox(float $size , float $angle , string $fontfile , string $text ) function对于步骤2中的平铺图像,您可以使用imagesettile功能。 您的步骤可能是这样的:

  1. 使用imagettfbbox
  2. 计算字符串宽度(和高度)
  3. 添加间距左侧和右侧宽度并使用此方法创建图像 大小
  4. 使用按钮和“中间”的左右两半绘制 imagesettile& imagefilledrectangle
  5. 输出字符串“left 半个“+”间距“使用imagettftext函数定位。