使用php shell命令合并图片的代码


Posted in PHP onJune 23, 2011
#!/usr/local/bin/php -q 
author:freemouse 
<?php 
// 下面是说明. 
print ("本程序用于合并2张 640x480大小的.\n"); 
print ("图片,并将其转化为一张 400x300 大小的图片\n"); 
print ("需要指定存放合成前图片(a.jpg,b.jpg)的默认目录\n"); 
print ("生成的图片将会保存为c.jpg\n"); //默认目录,自己编辑吧^_^ 
$d="/home/freemouse/Desktop"; 
print ("当前目录为: $d\n"); 
print (" 图片 a.jpg 偏移, 0-100: "); 
$fp = fopen("php://stdin", "r"); 
$a = fgets($fp,255); 
print (" 图片 b.jpg 偏移, 0-100: "); 
$b = fgets($fp,255); 
fclose($fp); 
$a=$a*3.2; 
$a=floor($a); 
$b=$b*3.2; 
$b=floor($b); 
// 将两张图片缩放至 640x480 尺寸 
exec("缩放至 640x480 -质量 95 " . $d . "/a.jpg"); 
exec("缩放至 640x480 -质量 95 " . $d . "/b.jpg"); 
$aa = "转换 -质量 90 -尺寸 320x480+"; 
$ab = " " . $d . "/a.jpg"; 
$bb = " " . $d . "/b.jpg"; 
$ac = " " . $d . "/aa.jpg"; 
$cc = " " . $d . "/bb.jpg"; 
// 缩放后的 a.jpg 另存为 aa.jpg 
$yy = $aa . $a . $ab . $ac; 
print ("$yy\n"); 
exec($yy); 
// 缩放后的 b.jpg 另存为 bb.jpg 
$zz = $aa . $b . $bb . $cc; 
print ("$zz\n"); 
exec($zz); 
// 合并两张图片为 c.jpg. 
$adjoin = "合成 -质量 80 "; 
$adjoin .= $d . "/aa.jpg "; 
$adjoin .= $d . "/bb.jpg "; 
$adjoin .= $d . "/c.jpg"; 
print ("$adjoin\n"); 
exec($adjoin); 
// 调整 c.jpg 至 400x300 尺寸 并添加边框. 
$edge="缩放至 400x300 -质量 75 -raise 4x4 -sharpen 1x1 " . $d . "/c.jpg"; 
print ("$edge\n"); 
exec($edge); 
?>
PHP 相关文章推荐
substr()函数中文版
Oct 09 PHP
用PHP实现将GB编码转换为UTF8
Nov 25 PHP
PHP程序员编程注意事项
Apr 10 PHP
PHP易混淆函数的区别及用法汇总
Nov 22 PHP
PHP实现的oracle分页函数实例
Jan 25 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
简单谈谈PHP中的trait
Feb 25 PHP
PHP中cookie知识点学习
May 06 PHP
使用composer命令加载vendor中的第三方类库 的方法
Jul 09 PHP
laravel实现按月或天或小时统计mysql数据的方法
Oct 09 PHP
Thinkphp5.0框架的Db操作实例分析【连接、增删改查、链式操作等】
Oct 11 PHP
PHP的imageTtfText()函数深入详解
Mar 03 PHP
php whois查询API制作方法
Jun 23 #PHP
PHP字符编码问题之GB2312 VS UTF-8解决方法
Jun 23 #PHP
PHP读取网页文件内容的实现代码(fopen,curl等)
Jun 23 #PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 #PHP
PHP学习笔记 (1) 环境配置与代码调试
Jun 19 #PHP
php开发过程中关于继承的使用方法分享
Jun 17 #PHP
php设计模式  Command(命令模式)
Jun 17 #PHP
You might like
php中变量及部分适用方法
2008/03/27 PHP
php file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
老生常谈PHP面向对象之解释器模式
2017/05/17 PHP
js 异步处理进度条
2010/04/01 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
js Map List 遍历使用示例
2013/07/10 Javascript
JavaScript输出当前时间Unix时间戳的方法
2015/04/06 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
详解vue slot插槽的使用方法
2017/06/13 Javascript
微信小程序简单实现form表单获取输入数据功能示例
2017/11/30 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
2018/01/22 Javascript
vue实现选项卡及选项卡切换效果
2018/04/24 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
vue的keep-alive中使用EventBus的方法
2019/04/23 Javascript
Vue代码整洁之去重方法整理
2019/08/06 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
2020/07/17 Javascript
Python中shape计算矩阵的方法示例
2017/04/21 Python
python 统计代码行数简单实例
2017/05/04 Python
Python学习小技巧之列表项的排序
2017/05/20 Python
解决pycharm py文件运行后停止按钮变成了灰色的问题
2018/11/29 Python
python-itchat 获取微信群用户信息的实例
2019/02/21 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
基于html5实现的图片墙效果
2014/10/16 HTML / CSS
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
C++面试题:关于链表和指针
2013/06/05 面试题
个人素质的自我评价分享
2013/12/16 职场文书
大学生求职自我评价
2014/01/16 职场文书
《母亲的恩情》教学反思
2014/02/13 职场文书
家长对老师的感言
2014/03/11 职场文书
信访工作经验交流材料
2014/05/23 职场文书
商场租赁意向书
2014/07/30 职场文书
大学生简短的自我评价
2014/09/12 职场文书
会议邀请函
2015/01/30 职场文书
个人工作表现自我评价
2015/03/06 职场文书
上帝也疯狂观后感
2015/06/09 职场文书