问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php 图象处理函数 imagestring 函数的运用

发布网友 发布时间:2022-04-06 04:10

我来回答

1个回答

热心网友 时间:2022-04-06 05:39

可以用imagettftext来生成,支持truetype字体

array imagettftext ( resource image, float size, float angle, int x, int y, int color, string fontfile, string text )

image
图像资源。见 imagecreatetruecolor()。

size
字体大小。根据 GD 版本不同,应该以像素大小指定(GD1)或点大小(GD2)。

angle
角度制表示的角度,0 度为从左向右读的文本。更高数值表示逆时针旋转。例如 90 度表示从下向上读的文本。

x
由 x,y 所表示的坐标定义了第一个字符的基本点(大概是字符的左下角)。这和 imagestring() 不同,其 x,y 定义了第一个字符的左上角。例如 "top left" 为 0, 0。

y
Y 坐标。它设定了字体基线的位置,不是字符的最底端。

color
颜色索引。使用负的颜色索引值具有关闭防锯齿的效果。见 imagecolorallocate()。

fontfile
是想要使用的 TrueType 字体的路径。

根据 PHP 所使用的 GD 库的不同,当 fontfile 没有以 / 开头时则 .ttf 将被加到文件名之后并且会在库定义字体路径中尝试搜索该文件名。

当使用的 GD 库版本低于 2.0.18 时,一个空格字符 而不是分号将被用来作为不同字体文件的“路径分隔符”。不小心使用了此特性将会导致一条警告信息:Warning: Could not find/open font。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路径中去。

很多情况下字体都放在脚本的同一个目录下。下面的小技巧可以减轻包含的问题。 <?php
// Set the enviroment variable for GD
putenv('GDFONTPATH=' . realpath('.'));

// Name the font to be used (note the lack of the .ttf extension)
$font = 'SomeFont';
?>

text
文本字符串。

可以包含十进制数字化字符表示(形式为:€)来访问字体中超过位置 127 的字符。UTF-8 编码的字符串可以直接传递。

如果字符串中使用的某个字符不被字体支持,一个空心矩形将替换该字符。

imagettftext() 返回一个含有 8 个单元的数组表示了文本外框的四个角,顺序为坐下角,右下角,右上角,左上角。这些点是相对于文本的而和角度无关,因此“左上角”指的是以水平方向看文字时其左上角。

例子 1. imagettftext() 例子

本例中的脚本将生成一个白色的 400x30 像素 PNG 图像,其中有黑色(带灰色阴影)Arial 字体写的“Testing...”。

<?php
// Set the content-type
header("Content-type: image/png");

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = 'arial.ttf';

// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 php中如何将图片储存在数据库里 用php如何把图像数据流保存 不懂PHP的慎进!如何保存网页中的“动态图片”? PHP如何接收post数据,谢谢 求教php $_POST 无法接收到 android ios POST过来的数据 php接收不到POST的数据 php接收不到java程序post过来的数据 php使用ajax post传过来的参数控制器怎么接收不到?? php中$_post不能接收数据 PHP为什么接收不到POST 的数据? php接收不到post数据怎么解决 linux服务器已经安装了nginx,并且搭了一个java程序的情况想,怎么安装php服务,并把php程序放在里面? 如何部署thinkphp到阿里云nginx服务器 thinkphp 登录 跳转 至 登录前页面 php怎么实现页面跳转,就是检测登陆时,如果没登陆就直接跳到登陆页面 HTML 代码 PHP登陆后 页面跳转 怎么设置登录成功后跳转到相应的页面 php如何在登录时跳转到另一个页面时显示登录用户? php登录成功后,如何跳转当面页面? php中,执行登录后如何自动跳转到指定页面 php中如何移动这个代码生成的图片到指定位置 imagejpeg($new_image, &#39;imge.jpg&#39;) PHP图像处理的 php中,如何将图片保存到mysql中? php中咋样把字符串转化为asc码 怎么用php把字符串转换为ASCII php 利用转义输出ascii字符问题 如何让PHP以二进制或ascii码执行? php如何分割中文字符串 php 如何将ASCII码 转换为 utf8编码?求PHP大侠 php怎么识别是不是汉字 PHP怎样用ASCII码写入文件 - PHP进阶讨论 php ascii 怎么转成utf8 易语言中如何将汉字转换为编码 PHP strcmp汉字怎么比较 php 如何用逗号把字符串分割为数组并把数组分别写入数据库? 在PHP中“以逗号分隔符将字符分割后存入数组”的函数是什么? php 中 以下字符串怎么转成数组 在PHP中“以逗号分隔符将字符分割后存入数组”的函数是什么?该怎样用?谢谢!! php 字符串转换为数组并循环显示 如何把用逗号隔开的字符串转换成列表或数组