仓酷云

标题: PHP网站制作之ImageTTFText函数完成图象加文字水印 [打印本页]

作者: 简单生活    时间: 2015-2-3 23:51
标题: PHP网站制作之ImageTTFText函数完成图象加文字水印
我假设你目前已经可以完成一个静态页面了,当然,做的好看难看是另外一说,皮皮我的第一个网页也没好看到哪去,但是“孩子”再丑,咱们做“爹妈”的也不能嫌弃不是?这毕竟是咱的成果。一个ImageTTFText函数包括了以下的参数,imagettftext (image,size,angle, x, y,color,fontfile,text)意思是 imagettftext() 将字符串 text 画到 image 所代表的图象上,从坐标 x,y(左上角为 0, 0)入手下手,角度为 angle,色彩为 color,利用 fontfile 所指定的 TrueType 字体文件。   依据 PHP 所利用的 GD 库的分歧,假如 fontfile 没有以 '/'开首,则 '.ttf' 将被加到文件名以后而且会搜刮库界说字体途径。

由 x,y 所暗示的坐标界说了第一个字符的根基点(也许是字符的左下角)。这和 imagestring() 分歧,其 x,y 界说了第一个字符的右上角。

angle 以角度暗示,0 度为从左向右浏览文本(3 点钟偏向),更高的值暗示逆时针偏向(即假如值为 90 则暗示从下向上浏览文本)。

fontfile 是想要利用的 TrueType 字体的文件名。

text 是文本字符串,可以包括 UTF-8 字符序列(模式为:{)来会见字体中超越前 255 个的字符。

color 是色彩的索引值。利用某色彩索引值的负值具有封闭防混色的后果

例以下面的 img.php 源码,使用则可以使用为 <img src="img.php">
  
  以下为援用的内容:
====================img.php

<?php
Header("Content-type: image/png");
/*告诉阅读器,要输入图象*/

//$im = imagecreate(400 , 300);
/*假如没有指定图象,可以自界说图象的巨细*/

$im = imagecreatefromjpeg("gd04.jpg");

$pink = ImageColorAllocate($im, 0 , 0 , 0);

$fontfile = "C:\WINDOWS\Fonts\朴直静蕾简体.ttf";
/* $fontfile 字体的途径,视操作体系而定,可所以 simhei.ttf(黑体) , SIMKAI.TTF(楷体) , SIMFANG.TTF(仿宋) ,SIMSUN.TTC(宋体&新宋体) 等 GD 撑持的中文字体*/

$str = iconv('GB2312','UTF-8','你想要的字符水印');
/*将 gb2312 的字符集转换成 UTF-8 的字符*/

ImageTTFText($im, 25,10,140,240,$pink,$fontfile,$str);
/* 到场中文水印 */

Imagepng($im);
ImageDestroy($im);
?>
   

假如需求做成静态URL的水印,则将
$str = iconv('GB2312','UTF-8','你想要的字符水印');
交换利用
$str = iconv('GB2312','UTF-8',$_REQUEST["id"]);
便可
不过还好,PHP语言给出的语法错误很详细,只要稍微熟悉一点之后,看错误提示就能很容易找出错误所在的。PHP还有一个特别好用的调试功能,在PHP语句中,你可以随时用echo来输出结果。
作者: admin    时间: 2015-2-4 06:30
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
作者: 老尸    时间: 2015-2-7 11:34
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
作者: 蒙在股里    时间: 2015-2-8 12:24
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
作者: 简单生活    时间: 2015-2-8 14:56
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
作者: 海妖    时间: 2015-2-25 18:11
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者: 若相依    时间: 2015-3-8 00:39
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 柔情似水    时间: 2015-3-15 18:10
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
作者: 灵魂腐蚀    时间: 2015-3-22 02:10
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 小妖女    时间: 2015-3-31 05:19
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者: 精灵巫婆    时间: 2015-4-3 16:21
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者: 谁可相欹    时间: 2015-4-12 04:53
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
作者: 深爱那片海    时间: 2015-4-13 04:20
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
作者: 飘飘悠悠    时间: 2015-4-15 01:28
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 冷月葬花魂    时间: 2015-4-16 09:29
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
作者: 第二个灵魂    时间: 2015-4-21 21:45
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者: 分手快乐    时间: 2015-4-25 15:17
基础有没有对学习php没有太大区别,关键是兴趣。
作者: 乐观    时间: 2015-4-26 11:49
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
作者: 愤怒的大鸟    时间: 2015-4-26 14:12
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2