hihiyou

www.vooplay.com

ImageMagick和GD2图像处理质量比较

with one comment

为了提高相册缩略图的质量,为PHP装上了ImageMagick的扩展:imagick

测试环境为PHP5.2.4 GD2 ImageMagick6.4.3 Q8 操作系统为windows xp

imagick的功能确实强大,生成缩略图的代码:

1
2
3
$Image = new Imagick( '8.jpg' );
$Image->thumbnailImage( 200, null );
$Image->writeImage( '1.jpg' );

下面是原图(JPG,点击查看完整尺寸):

imagick生成缩略图:

程序耗时0.108s

GD2生成缩略图:

程序耗时0.143s

两者生成的图片大小基本一致,GD2生成的图像质量并不像以前GD那么不堪,和ImageMagick基本一致

接下来我画了一张png格式的图形,测试下直线直角的缩图效果,原图是:

imagick生成缩略图:

程序耗时0.040s

GD2生成缩略图:

程序耗时0.099s

看起来一样,文件大小,imagick生成的为4.8k,GD2的则为6.5K

总结:
ImageMagick和GD2生成缩图的质量基本差不多,ImageMagick效率要比GD2高得多,功能也是强大很多

GD 是可以信赖的…..^_^

Written by admin

9月 19th, 2008 at 9:48 上午

Posted in 技术

装了个Ubuntu Server

with 55 comments

安装过程很简单了,把网线拔了,不然安装过程可能会卡住,虚拟机的网络连接采用host-only

装完后需要配置下,由于采用host-only模式,需要把主机的网卡连接给共享了,共享给”VMware Network Adapter VMnet1″

配置网卡
vim /etc/network/interfaces
=======================================
auto eth0
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.1
=======================================

DNS
vim /etc/resolv.conf
(可能是新建的文件)
=======================================
nameserver 192.168.0.1
=======================================
/etc/init.d/networking restart

apt-get update
apt-get install openssh-server
apt-get install make
apt-get install gcc
apt-get install build-essential

后面三个是编译程序用的

ubuntu真是纯洁啊…一张光盘搞定

Written by admin

9月 18th, 2008 at 5:55 下午

Posted in 技术

mysql:不存在才插入…

without comments

1
2
INSERT INTO `user` ( name ) SELECT 'hihiyou' FROM DUAL 
WHERE NOT EXISTS ( SELECT 1 FROM `user` WHERE `name` = 'hihiyou' )

 

DUAL作为一个假的表名

Written by admin

8月 1st, 2008 at 2:27 下午

Posted in 技术

使用onpropertychange 和 oninput 制作 autocomplate

without comments

onpropertychange只支持IE
oninput支持Firefox(safar和opera我没测试,应该问题不大)
在Firefox下,添加oninput事件不能使用:

obj.oninput

这样的写法,只能:

1.

1
document.getElementById('xxx').addEventListener("input",handler,false);

2.

1
<input type="text" oninput="handler();" />

使用jquery就这样:

1
$('#id').bind('oninput',handler);

hiahia~~~~

jquery的autocomplete插件,如果在Firefox下使用输入法的话会出现问题,使用上述方法可以改进

打开源代码,在

$input.keydown…..

上面加上

1
2
3
4
5
6
7
var tiggerName = ($.browser.msie) ? 'propertychange' : 'input';
 
$input.bind(tiggerName, function(){
 active = -1;
 if (timeout) clearTimeout(timeout);
 timeout = setTimeout(function(){onChange();}, options.delay);
});

使用时候设置autoFill为false,否则等于又进行了输入,在IE下会有点小麻烦….奇怪是Firefox没问题…

Written by admin

8月 1st, 2008 at 2:17 下午

Posted in 技术

mysql系列函数对存储过程支持很烂

without comments

请用mysqli系列-_-

Written by admin

7月 28th, 2008 at 8:57 上午

Posted in 技术