09Dec

php创建图片,生成水印

采用原生GD库实现,适用于图片合成和水印生成等场合。

<?php
/*
Photozero.net 改编自PHP参考文档
*/
//设置Header,如果输出图片不成功,请先暂时去掉这代码,查看错误信息
header("Content-type: image/png");
header("Cache-Control: no-cache");
$zh_text = '黑体';
$en_text = 'Test';
//要输出的字
$zh_font = 'simhei.ttf';
$en_font = 'arial.ttf';
//字库的文件名。建议中文字体和E文字体用不一样的,因为宋体、黑体字库里的英文实在不咋滴
//这里用的都是TTF字体。懒得上网找就到 C:\WINDOWS\Fonts 下,Copy几个字体到程序目录下就好了
// 创建一个真彩的图片背景,参数是 X长 ,Y宽。
$im = imagecreatetruecolor(400, 400);
//或者可以调用已有的PNG图片等 : $im = imagecreatefrompng('background.png');
// 定义几个色彩
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
//填充背景为白色
imagefill($im, 0, 0, $white);
//将背景透明化
imagecolortransparent($im,$white);
//以上两行是创建透明图片的关键!
//很多人反应, imagecreatetruecolor创建后的图片,背景颜色是黑的,无论怎么修改都不能变成白色的
//我先将背景填充为白色,再做透明处理就可以了!在Firefox3和IE7下测试成功!
// 这是一个很简单的产生阴影的效果。
//先在原本要输出的位置的偏左下角一点点输出灰色的字体,接着再用黑色字体写上去就有阴影效果了
//下次再提供点别的花样~
//imagettftext($im, 20, 0, 11, 21, $grey, $en_font, $en_text);
// 写入字体
imagettftext($im, 12, 0, 100, 120, $black, $en_font, $en_text);
imagepng($im);
imagedestroy($im);
// 不用说了,输出图片,然后清除缓存
//函数都是用PHP内置的,如果有不了解的请参考一下文档。
?>

31Aug

PHP调用纯真IP数据库返回具体地址【转】

原文地址:http://www.1990c.com/?p=1058

本文主要是说PHP如何使用纯真IP数据库,代码见正文。

08Aug

帝国7安装ueditor插件,上传附件失败

帝国默认的fckeditor编辑器一直很恶心,各种乱七八糟的代码,编辑起来也不方便。

百度的ueditor使用起来还好,于是乎就调用了ueditor插件。

为了节省时间,就不自己折腾安装了,找网上现成的插件,安装步骤:

  1. 系统——管理数据表——管理字段——修改newstext字段——“输入表单”和“投稿表单”html代码

  2. 换成<?php include(ECMS_PATH.'/e/data/ecmseditor/ueditor/php/editor.php');?>

  3. 将UEditor文件夹放到edataecmseditor目录下

格式化的功能一般是不会出问题的,主要验证了图片、附件上传和涂鸦保存功能,于是悲剧产生了。。

附件上传有问题,搞了半天,才发现是身份验证无法通过,具体原因还没了解。暂时的解决方法是注释掉ueditor/php/upload_ecms_fun.php中的以下语句:

  1. //DoChECookieRnd_pkkgu($userid,$username,$rnd,'',$cdbdata,$groupid,$adminstyle,$truelogintime,$loginecmsckpass,$session);

  2. //DoECheckAndAuthRnd($userid,$username,$rnd,$adminr['userprikey'],$cdbdata,$groupid,$adminstyle,$truelogintime,$loginecmsckpass,$session);

  3. //printerror_pkkgu("NotLogin","index.php");