php给图片加水印
由于php的gd模块需要编译对图片兼容性也不够,经常有的图片不能加载,这里使用php外部调用woo语言来处理
1.新建一个pic.woo文件,然后使用php 执行 woo pic.woo
local avatar = woo.gd:new()
-- 加载正方形头像
avatar:loadImage(_home() .. '/Desktop/avatar.jpg')
-- 重新修改头像尺寸
avatar:resize(144, 144, 0)
-- 设置圆形头像
avatar:setBorderRadius(0)
---头像外框
local avatar_bord = woo.gd:new()
-- 加载头像外框
avatar_bord:loadImage(_home() .. '/Desktop/avatar_bord.png')
--- 背景画布
local background = woo.gd:new()
-- 背景创建一个空白画布
background:create(172, 200)
-- 绘制头像到空白画布
background:drawImage(avatar, 14, 13)
-- 绘制 头像边框到空白画布
background:drawImage(avatar_bord, 0, 0)
-- 保存最终结果为p.png
background:savePng('/p.png')
2.使用php脚本的system()函数来执行 woo pic.woo
<?php
$shell = "woo pic.woo";
echo "<pre>";
system($shell, $status);
echo "</pre>";
//注意shell命令的执行结果和执行返回的状态值的对应关系
$shell = "<font color='red'>$shell</font>";
if( $status ){
echo "shell命令{$shell}执行失败";
} else {
echo "shell命令{$shell}成功执行";
}
?>