【发布时间】:2014-10-08 12:50:40
【问题描述】:
我有几行代码可以在 php 中生成带有一些给定文本的纯图像。但是当我为图像文本指定宽度时,它会超出图像。如何将图像内的文本与固定宽度但动态高度对齐?我的代码如下。
header ("Content-type: image/png");
$string = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s';
$font = 4;
$width = ImageFontWidth($font) * strlen($string);
$height = ImageFontHeight($font);
$im = @imagecreate (200,500);
$background_color = imagecolorallocate ($im, 255, 255, 255); //white background
$text_color = imagecolorallocate ($im, 0, 0,0);//black text
imagestring ($im, $font, 0, 0, $string, $text_color);
imagepng ($im);
我希望这张图片能够根据给定的段落自动调整文本。该怎么做?
【问题讨论】:
-
我在另一个项目中遇到了很多麻烦,因为字母间距和每个字母的宽度你无法以可接受的方式做到这一点。除了使用 php 创建图像,您可以做的是,使用文本创建一个简单的 html 文件,然后使用 phantomjs 截取屏幕截图并在该文件夹中创建图像。相信我,这将是最简单的方法。 phantomjs 非常简单,可以在几秒钟内完成您所要求的任何事情。这是您需要的:phantomjs.org/screen-capture.html
标签: php image image-generation