📄 012.htm
字号:
<HTML><HEAD><meta http-equiv="Content-Type" content="text/html; charset=GB2312"><TITLE>-->DELPHI专题--网络应用-->Delphi开发Web Server程序――如何返回图像</TITLE>
<META NAME="keywords" CONTENT=" DELPHI专题--网络应用 Delphi开发Web Server程序――如何返回图像">
<META NAME="description" CONTENT=" - DELPHI专题--网络应用 - Delphi开发Web Server程序――如何返回图像">
<style>
<!--
#page {position:absolute; z-index:0; left:0px; top:0px}
.tt3 {font: 9pt/12pt "宋体"}
.tt2 {font: 12pt/15pt "宋体"}
a {text-decoration:none}
a:hover {color: blue;text-decoration:underline}
-->
</style>
</HEAD>
<a href="index4.html">返回</a>
<body text="#000000" aLink=#9900ff link=#006699 vLink=#006699 bgcolor="#FFFFFF" leftmargin="3" topmargin="3" marginheight="3" marginwidth="3">
<TABLE WIDTH="100%" CELLPADDING=10 CELLSPACING=0 BORDER=0>
<TR>
<TD class="tt2" bgcolor="#F5F8F8" width="84%"><center><B><FONT style="FONT-SIZE: 16.5pt" COLOR="#FF6666" FACE="楷体_GB2312">Delphi开发Web Server程序――如何返回图像</FONT></B></center>
<hr color="#EE9B73" size="1" width="94%">
<p>Internet/Intranet在九十年代可能是最流行的计算机术语了,不管是计算机行业内的人士还是计算机外的人士,都会使用Internet/Intranet,有的查资料,有的是宣传自己和公司,甚至有许多以前从没有想到用Internet的东西现在也在用Internet来解决,比如有的程控数字计算机维护用Internet来解决。在这一切应用之中,基于Web
Server的应用程序的开发是基本点,但如何开发Web Server的程序呢? <br>
<br>
Delphi 3是Borland公司1997年推出的可视化、面向对象的高效率的快速应用程序开发工具(RAD),提供了大量的最新功能,例如开发COM/DCOM,一步开发ActiveX对象,多层数据库应用程序MIDAS等,并且使用Delphi
3开发基于Web服务器的程序,如ISAPI/NSAPI,Win-CGI,CGI程序都十分方便。
<br>
<br>
使用Delphi 3开发Web Server程序是非常简单,方便的,因为在Delphi中提供了Web
Module, WebApplication, TWebRequest,TWebResponse,TPageProducer等大量的对象供使用。而且由于Delphi强大的数据库开发能力,使得Web
Server程序的开发更是锦上添花。在本文中主要讨论一般Web Server程序的开发,希望给您一个抛砖引玉的作用。
<br>
<br>
一般Web Server返回的信息有基于HTML的文字流和图像流,如Jpeg和Gif等。返回文字流的方法是使用TwebResponse.Content,在Delphi
3的Demos中有这样的例程,但如何返回图像呢? <br>
<br>
返回图像的方法是用TwebResponse.ContentStream和TjpegImage类。具体实现如下,例如您有三张图片,希望在别人访问您的主页时能随机的显示一张,在您的主页中有如下的HTML语句:<IMG
SRC="/scripts/mypict.dll">,那么在您的Web Server的缺省的TwebActiveItem中如下处理:
<br>
<br>
var <br>
Jpg: TJpegImage; <br>
S: TMemoryStream; <br>
I: Integer; <br>
Begin <br>
Randomize; <br>
I:= Random(3); <br>
Jpg := TJpegImage.Create; <br>
try <br>
Jpg.LoadFromFile('C:\WebShare\Scripts\test'+IntToStr(I)+'.Jpg'); <br>
S := TMemoryStream.Create; <br>
try <br>
Jpg.SaveToStream(S); <br>
S.Position := 0; <br>
Response.ContentType := 'image/jpeg'; <br>
Response.ContentStream := S; <br>
Response.SendResponse; <br>
finally <br>
S.Free; <br>
end; <br>
finally <br>
Jpg.Free; <br>
end; <br>
end; <br>
<br>
因为使用了TJpegImage类,所以必须在Uses中添加对JPEG文件的包含。
<hr color="#EE9B73" size="1" width="94%">
</TD>
</TR>
</table>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -