L lvjun99 Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-25 #1 用paradox表结构如何存储doc文档(既有文字,又有图像),并用数据库 控件显示出来?
M menxin Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-25 #3 不是一句两句说得清楚,你的主要问题在哪里呢? 首先,机器中必须有word,在程序中用ole调用word处理, 去ole分类找找,都是这类问题。
C cytown Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-25 #4 呵呵,文字当然是没有问题了,但图象则不同,因为WORD使用OLE调和显示 大部分图象, 并用数据库控件显示出来? 这,好象还没有支持WORD显示的数据库控件吧 不过,你可以存成临时文件再使用OLE显示。
呵呵,文字当然是没有问题了,但图象则不同,因为WORD使用OLE调和显示 大部分图象, 并用数据库控件显示出来? 这,好象还没有支持WORD显示的数据库控件吧 不过,你可以存成临时文件再使用OLE显示。
L lvjun99 Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-25 #5 to menxin : 是这样的,有一个表内容是:文件号,文件标题,文件内容。 如果文件内容全是文本,那非常好处理,我已经解决。现在的关键是文件内 容既有文本,也有图像,掺杂在一起,该用什么字段存储此内容,并能象备注 型字段一样显示出来。 用ole当然可以,但对客户端要求较多,不好,我想把文件内容存到数据库中 去,或者把文件内容存成一个文件,字段里只存一个文件名,关键是在走记录时, 如何能看到此文件内容。
to menxin : 是这样的,有一个表内容是:文件号,文件标题,文件内容。 如果文件内容全是文本,那非常好处理,我已经解决。现在的关键是文件内 容既有文本,也有图像,掺杂在一起,该用什么字段存储此内容,并能象备注 型字段一样显示出来。 用ole当然可以,但对客户端要求较多,不好,我想把文件内容存到数据库中 去,或者把文件内容存成一个文件,字段里只存一个文件名,关键是在走记录时, 如何能看到此文件内容。
M menxin Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-25 #6 cytown:图象也没什么问题,用stream可以搞定一切的。放个image动态调入不行吗? lvjun99:如果你用多个文件存储可以用TOleContainer.loadfromfile,用字段的话 就用blob存放图象,将图象化为流,存入流不行吗?
cytown:图象也没什么问题,用stream可以搞定一切的。放个image动态调入不行吗? lvjun99:如果你用多个文件存储可以用TOleContainer.loadfromfile,用字段的话 就用blob存放图象,将图象化为流,存入流不行吗?
C cytown Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-26 #7 呵呵,图象当然有问题了,首先,你不知道使用了哪些图象,其次,OLE的方法是 得到对象的地址(如:C:/TEMP/AAA.BMP)然后调用OLE程序使用,但假设这样: test.doc中使用了 f:/test/fff.bmp,再假设你知道这个BMP文件,存到数据库 中,在调用时怎么办?把fff.bmp还原到f:/test/下吗?如果客户只有C、D两个 硬盘怎么办? 呵呵,没有考虑到吧?!
呵呵,图象当然有问题了,首先,你不知道使用了哪些图象,其次,OLE的方法是 得到对象的地址(如:C:/TEMP/AAA.BMP)然后调用OLE程序使用,但假设这样: test.doc中使用了 f:/test/fff.bmp,再假设你知道这个BMP文件,存到数据库 中,在调用时怎么办?把fff.bmp还原到f:/test/下吗?如果客户只有C、D两个 硬盘怎么办? 呵呵,没有考虑到吧?!
S suny Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-31 #9 利用 BLOB可以解决,你完全不必考虑文本和图象,因为你可以将整个DOC文档作为对象存入 BOLB中,如果需要示范可以向我索取.在这里可以给你一个简单的几条语句: (注:ORACLe 数据库) /* 读出数据库中的数据 */ begin //建立临时文件 DocFile := ExtractFilePath(ParamStr(0)) + 'Temp.Doc'; //将字段内容存入临时文件 TBlobField(FieldByName('Context')).SaveToFile(DocFile); end; // OLE 容器 oleWord.DestroyObject; //建立 OLE 关联 oleWord.CreateObjectFromFile(DocFile, False); oleWord.DoVerb(1); 存入数据库中可以逆向操作.
利用 BLOB可以解决,你完全不必考虑文本和图象,因为你可以将整个DOC文档作为对象存入 BOLB中,如果需要示范可以向我索取.在这里可以给你一个简单的几条语句: (注:ORACLe 数据库) /* 读出数据库中的数据 */ begin //建立临时文件 DocFile := ExtractFilePath(ParamStr(0)) + 'Temp.Doc'; //将字段内容存入临时文件 TBlobField(FieldByName('Context')).SaveToFile(DocFile); end; // OLE 容器 oleWord.DestroyObject; //建立 OLE 关联 oleWord.CreateObjectFromFile(DocFile, False); oleWord.DoVerb(1); 存入数据库中可以逆向操作.
R raider Unregistered / Unconfirmed GUEST, unregistred user! 1999-08-31 #10 如果只有文字和图片,我建议你把Word文档存成RTF文件,用blob写入数据库, 在你的界面上放一个可以支持图片的RTF控件, 显示时,利用stream 读入 这样显示起来较快,比用ole好. 但是RTF控件不支持表格.
如果只有文字和图片,我建议你把Word文档存成RTF文件,用blob写入数据库, 在你的界面上放一个可以支持图片的RTF控件, 显示时,利用stream 读入 这样显示起来较快,比用ole好. 但是RTF控件不支持表格.