图片合并的问题,请大富翁帮帮忙看看,不懂也顶下 ( 积分: 200 )

  • 主题发起人 主题发起人 zyyjc
  • 开始时间 开始时间
Z

zyyjc

Unregistered / Unconfirmed
GUEST, unregistred user!
现在想把多张JPG格式的图片保存到一个文件中,当使用时再通过这个文件一张张读出来,请教高手怎么做,最好有例子或者网上有现成的源码,不行的话给个思路也行
我的邮箱:zyyjcking@21cn.com
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=3815658
 
用流的方式 格式为,图象大小+图象+图象大小+图象...提取的时候,根据图象大小取图象,循环。
 
ak_2004,你好
我对流操作不太熟悉,能不能贴个简单点的保存及提取的代码出来
 
合并:
procedure CombineStream(SrcName: string; Src, Dst: TStream);
var
l: Integer;
begin
l := length(srcname);
with dst do
begin
writebuffer(l, sizeof(integer));
writebuffer(srcname[1], l);
l := src.size;
writebuffer(l, sizeof(integer));
copyfrom(src);
end;
end;

读取:
procedure ReadAnyStream(Dst, Src: TStream; Name: string);
var
l: Integer;
buffer: string;
begin
with src do
begin
seek(0,0);
repeat
readbuffer(l, sizeof(integer));
setlength(buffer, l);
readbuffer(buffer[1], l);
readbuffer(l, sizeof(integer));
if buffer=name then
begin
dst.copyfrom(src, l);
break;
end
else seek(1, l);
until position >= size;
end;
end;
 
建议采用如下格式:
图像1,图像2,....,图像N,N个图像的索引信息。索引信息包括:每个图像的存放起始位置,每个图像的大小,图像名称等。
如果不知道怎么写,建议到网上去找N年前的"电子书库"源代码。

再不行,建议采用桌面型数据库,比如:TinyDB, DBISAM,或者Access.
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部