Username:
Password:
Remember Me?
CGI教学:第二章动态创建图像
< 上一篇
|
下一篇 >
来源:linux宝库作者:linux宝库 发布时间:2007-09-30 00:00:00
岸??牡怠辈坏肝谋荆?GI程式能够创建图象、声音等各种媒体。您只须输出相应的MIME头、一行空行及原始数据即可。
下例的image.cgi将装载一个GIF图像文档并送到浏览器显示:
#!/usr/bin/perl
$file = ’/usr/local/etc/httpd/htdocs/images/picture.gif’;
print "Content-Type: image/gif\n\n";
open(GIF,"<$file") || die "Can’t open GIF\n";
while (read(GIF,$buffer,16384)) {
print $buffer;
}
image.cgi首先发送MIME头说明(Content-Type),然后读取文档内容并输出。这段程式对$file变量和Content-Type类型略加修改就能够发送声音或影像文档。
那么怎样把CGI程式创建的图像嵌到页面中呢?SSI是不行的,方法是用
标签,语法如:
仅就显示picture.gif这幅图像而言,用上述的image.cgi是没有什么意义的,更恰当的方式是这样使用:
但是,image.cgi能够扩展功能来做更多的事。例如他能够从多个图像文档中随即地选择一个来显示,那么,每一次访问该页面时都会出现不同的图像。
计数器程式通常利用
标签的这一特性,尤其是那些不允许解析HTML和SSI的服务器特别实用。服务器端不解析HTML文档能够降低服务器的负载。
此外,除了简单的装载并显示已有的图像文档外,能够真正的动态生成所需的图像。您能够设计一个CGI程式根据不同的参数及用户定义的一些细节来实时创建相应的图像(如图表)并显示。这种程式的复杂性在于图像的生成而不在于将图像输出给浏览器。幸运的是,有一些库提供了这样的接口,如Thomas boutell的gd图像库,这是生成GIF图像的一个出色工具,能够从http: //www.nease.net/tppmsgs/msgs0.htm#29来下载。他是用C语言写的,但是有Perl接口库gd.pm,更有基于gd支持多种语言的接口库tgd和fly。周详情况见上述gd主页。
下面是个简单的用位图动态生成图像的计数器程式,对理解上述描述应该会有所帮助。(源代码下载)
您是第位访问本网页的人。
附:GIF的说明
现在流行着一种趋势,即远离GIF格式而采用Portable Network Graphic格式(PNG),这种变化出于技术和法律两个方面的考虑。1995年1月1日,Unisys声称他们有权需要使用LZW压缩算法的软件公司要经过他们的许可或付给他们报酬,因为他们拥有专利使用权。而GIF格式正是使用这种算法。所以,您所编写的任何用于商业应用程式中的GIF图像(包括以 CGI/WWW为基础的那些文档),都必须购买许可证或支付费用。许多软件包不再压缩GIF文档(这样会使图像变得很大),或把GIF文档及其支持软件全部去掉。PNG使用非专利的压缩算法,从而避免了这些麻烦。在技术方面,PNG提供了较好的压缩算法(无损失,像GIF相同,但不像JPEG。JPEG 在压缩时会丢失数据)、二维交互连同24位和48位真彩支持。现在,很少有浏览器支持内插的PNG图像,但不久的将来,这种情况很可能会改变。GD图像库文档说明了PNG支持即将来临。
喜欢本文,那就收藏到:
上一篇:
CGI教学:第一章cgilib例
下一篇:
CGI教学:第三章计数器的编写方法
相关评论
我也要评论
还没有关于此文章的相关评论!
首页
上一页
下一页
尾页
昵称:
(为空则显示guest)
评论分数:
★
★ ★
★★★
★★★★
★★★★★
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
相关推荐
xml轻松学习手册(3)xml的术语_xml教程
xml轻松学习手册(4)xml语法_xml教程
xml轻松学习手册(5)xml实例解析_xml教程
了解web页面工具语言xml(一)产生背景_xml教程
了解web页面工具语言xml(二)定义_xml教程
了解web页面工具语言xml(三)支持工具_xml教程
了解web页面工具语言xml(四)应用分类_xml教程
了解web页面工具语言xml(五)好处_xml教程
了解web页面工具语言xml(六)展望_xml教程
xml技术上传文档_xml技巧
相关资讯
Perl/TkFAQ-10.19.怎样配置不让菜单被扯掉
提高perl程式的运行速度
Perl常用系统函数
Perl的基本输入输出
Perl进程管理
Perl文档及目录操作
Perl的运算符号字符
Perl变量(1)--纯变量
跟我学Perl(三)
跟我学Perl(二)
点击发布文章
导航
主页
设为首页
加入收藏
联系我们
赞助商
文章类别
行业资讯
域名资讯
虚拟主机
托管租用
VPS
CDN
网站运营
技术资讯
Mac OS
网络设备
路由技术
网络技术
HTML/DHTML
源码天堂
网络编程
Java
Perl
C/C++
Shell
数据库其他
DB2
Sybase
存储备份
硬件技术
网站建设
通信技术
虚拟化技术
安全其他
安全工具
加密和破解
数据库安全
程序安全
网络安全
系统安全
防火墙
VPN
网管技术其他
Informix
Oracle
PostgreSQL
Dreamweaver教程
windows操作系统
XML编程
NET编程
JSP编程
PHP编程
ASP编程
Mssql
Mysql
Access
Coreldraw
flash
web服务器
ftp服务器
mail服务器
邮件系统
IBM-AIX
HP-UX
Sco
Solaris
FreeBSD
Linux
Proxy
CSS教程
Javascript教程
Ajax
dns服务器
Photoshop教程
站长资讯
冲浪宝典
帮助中心
首页新闻
其它相关问题
安全漏洞相关问题
网站推广相关问题
虚拟主机相关问题
网站建设相关问题
服务器相关问题
备案相关问题
支付相关问题
后台操作指南
代理相关问题
邮件相关问题
域名相关问题
vps相关问题
行业资讯
名网动态
新手指南
代理帮助
订阅
Rss Feed
主机赞助商连接:
华夏名网虚拟主机域名注册
关于我们 | 网站声明 | 联系我们 | 广告服务 IDC中文资讯站-客观公证的IDC产业权威媒体
Copyright
@
2007-2008 IDCNEWS.NET, All Rights Reserved
蜀ICP备07504800号