我正在寻找使用PHP向文本添加内部阴影的方法。我不是在寻找一个包含HTML和/或CSS的解决方案。必须仅使用PHP生成映像。
例如:http://i.imgur.com/jYGvM.png
从上面的文字('原创')我想创建修改文本,所以它看起来像底部的文字('阴影')。
仅使用GD库或Imagemagick就可以实现效果,因为我无法在服务器上安装新库。
答案 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);
?>