-2

我需要在图像顶部放置文本并创建缩略图。谷歌地图上有很多标记,上面有数字。

根据下面的评论,我可以理解没有“addTextToImage()”,但 GIFBUILDER 是要走的路。所以我从一位同事那里得到了一些帮助,最终得到了这个效果很好的结果。在此处阅读有关功能和设置的更多信息:

以下示例使用 Google 21x22px 的标记。使用 png 最终图像以白色背景结束。使用 gif 创建的图像确实有一个透明的背景组。这可能是服务器设置而不是一般问题。

这是带有简短注释的代码

// create marker
$path = 'fileadmin/templates/matchoffice/images/mapPointer.gif'; // gif on transparent backgroupd. If using a png the background cannot be made transparent
$cObj = t3lib_div::makeInstance('tslib_cObj');
$counter = $gmapsElementCounter; // the number that will be written on each marker

$imgTSConfigThumb['file'] = 'GIFBUILDER';
$imgTSConfigThumb['file.']['XY'] = '21,22'; // size of final image. In this case same as input file size
$imgTSConfigThumb['file.']['format'] = 'png';
$imgTSConfigThumb['file.']['backColor'] = '#ffffff'; // we want it transparent. That is done in next line
$imgTSConfigThumb['file.']['transparentColor'] = '#ffffff'; // this color to be transparent.... workaround
$imgTSConfigThumb['file.']['10'] = 'IMAGE';
$imgTSConfigThumb['file.']['10.']['file'] = $path;
$imgTSConfigThumb['file.']['10.']['file.']['maxW'] = 21; // just setting them to the size of the input pig
$imgTSConfigThumb['file.']['10.']['file.']['maxH'] = 22; // just setting them to the size of the input pig
$imgTSConfigThumb['file.']['10.']['align'] = 'c,c'; // center this layer (left/right))
$imgTSConfigThumb['file.']['20'] = 'TEXT';
$imgTSConfigThumb['file.']['20.']['text'] = $counter; // use counter as text
$imgTSConfigThumb['file.']['20.']['fontFile'] = 'fileadmin/templates/matchoffice/fonts/arial.ttf'; // font for text
$imgTSConfigThumb['file.']['20.']['align'] = 'center'; // center (left/right)
$imgTSConfigThumb['file.']['20.']['offset'] = '0,12'; // move it 0pz to the left and 12px down
$imgTSConfigThumb['file.']['20.']['fontColor'] = 'white'; // text color white
$imgTSConfigThumb['file.']['20.']['fontSize'] = '9';
$imgTSConfigThumb['file.']['20.']['niceText'] = '1'; // don't know, but it did improve the text

$thumbpath = $this->cObj->IMG_RESOURCE($imgTSConfigThumb);
4

1 回答 1

0

问题已结束 - 在此之前更新为有效的最终解决方案

GIFBUILDER 似乎是向图像添加文本时要走的路。如果您需要做同样的事情,请使用上面的代码。

于 2012-09-01T17:58:09.433 回答