将内部阴影添加到文本中

时间:2011-12-27 16:08:26

标签: php gd

我正在寻找使用PHP向文本添加内部阴影的方法。我不是在寻找一个包含HTML和/或CSS的解决方案。必须仅使用PHP生成映像。

例如:http://i.imgur.com/jYGvM.png
从上面的文字('原创')我想创建修改文本,所以它看起来像底部的文字('阴影')。
仅使用GD库或Imagemagick就可以实现效果,因为我无法在服务器上安装新库。

1 个答案:

答案 0 :(得分:0)

一种方法是使用不同颜色和小偏移量绘制文本两次。

下面是示例代码,主要取自php manual,并进行了一些修改以让阴影出现。生成的图像为here

代码:

<?php
// Create a 300x100 image
$im = imagecreatetruecolor(300, 100);
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
$gray = imagecolorallocate($im, 0x55, 0x55, 0x55);
$gray2 = imagecolorallocate($im, 0xDD, 0xDD, 0xDD);

// Make the background red
imagefilledrectangle($im, 0, 0, 299, 99, $gray2);

// Path to our ttf font file
$font_file = './ariblk.ttf';

// the text without shadow
imagefttext($im, 40, 0, 10, 45, $white, $font_file, 'Original');

// the shadow for "Shadow"
imagefttext($im, 40, 0, 10, 89, $gray, $font_file, 'Shadow');

// and the word itself
imagefttext($im, 40, 0, 10, 90, $white, $font_file, 'Shadow');

// Output image to the browser
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
?>