采用midas
现在要实现的功能是:从客户端将格式为“.jpg”的图片传送到服务器端并存为“.pdf”格式的文件,客户端程序如下:
var
ov : oleVariant;
MyBuffer : Pointer;
filstream : TFileStream;
begin
filstream := TFileStream.Create(imagePath,fmOpenRead);
try
filstream.Position := 0;
ov := VarArrayCreate([0,filstream.size - 1],varByte);
MyBuffer := VarArrayLock(ov);
filstream.Position := 0;
filstream.ReadBuffer(MyBuffer^,filstream.Size);
VarArrayUnlock(ov);
dm.ConnectionBroker1.AppServer.uploadImage(ov,trim(imagefile),imagetype);
finally
filstream.Free;
end;应用服务器端程序如下:
procedure TDocServer.uploadImage(imagestream: OleVariant;
const imagefilename, imagetype: WideString);
//这个过程把variant写到stream里面
procedure Save_variant_into_stream(ov:OleVariant;stream:Tstream);
var MyBuffer: Pointer;
begin
MyBuffer := VarArrayLock(ov);
stream.Position:=0;
stream.Write(mybuffer^,VarArrayHighBound(ov, 1));
VarArrayUnlock(ov);
end;
var f:Tfilestream;
begin
f:=Tfilestream.Create(trim(mainform.edPhotorootfolder.Text)+'\'+imagetype+'\'+trim(imagefilename), fmCreate);
try
Save_variant_into_stream(imagestream,f);
finally
f.free;
end;
end;
现在要实现的功能是:从客户端将格式为“.jpg”的图片传送到服务器端并存为“.pdf”格式的文件,客户端程序如下:
var
ov : oleVariant;
MyBuffer : Pointer;
filstream : TFileStream;
begin
filstream := TFileStream.Create(imagePath,fmOpenRead);
try
filstream.Position := 0;
ov := VarArrayCreate([0,filstream.size - 1],varByte);
MyBuffer := VarArrayLock(ov);
filstream.Position := 0;
filstream.ReadBuffer(MyBuffer^,filstream.Size);
VarArrayUnlock(ov);
dm.ConnectionBroker1.AppServer.uploadImage(ov,trim(imagefile),imagetype);
finally
filstream.Free;
end;应用服务器端程序如下:
procedure TDocServer.uploadImage(imagestream: OleVariant;
const imagefilename, imagetype: WideString);
//这个过程把variant写到stream里面
procedure Save_variant_into_stream(ov:OleVariant;stream:Tstream);
var MyBuffer: Pointer;
begin
MyBuffer := VarArrayLock(ov);
stream.Position:=0;
stream.Write(mybuffer^,VarArrayHighBound(ov, 1));
VarArrayUnlock(ov);
end;
var f:Tfilestream;
begin
f:=Tfilestream.Create(trim(mainform.edPhotorootfolder.Text)+'\'+imagetype+'\'+trim(imagefilename), fmCreate);
try
Save_variant_into_stream(imagestream,f);
finally
f.free;
end;
end;
解决方案 »
- 求教关于fastreport的问题
- 主界面添加多个Edit控件,按Tab键无效,看似一切设置正常。不知道为什么?求助。
- DELPHI 程序如何连接上LINUX上的MYSQL5.0数据库对数据进行操作呢。
- EXpress DBEditor5底下的cxDBLookupComboBox控件怎么用
- Indy控件组的TIdIcmpClient有BUG!
- 请问这个用的是什么控件?
- 请各位兄台帮帮忙,解决一下,我快晕死了!!!!!
- 高分求delphi5 update pack 1 enterprise edition的序列号
- 数据字格式化
- 有什么好方法处理TThread对象的异常?
- 使用sendmessage传递数据遇到的问题
- 谁知道哈尔滨新中新电子股份有限公司?
不胜感激~~~~
象你这样写法,把*.jpg直接改成*.pdf,还要我们编程吗?
^_^,我想也是~
是要把jpg转换成ADOBE的那个Acrobat的PDF格式?