【问题标题】:How do I store and view graphically formatted data?如何存储和查看图形格式的数据?
【发布时间】:2025-12-16 13:50:01
【问题描述】:

我有一个类似于文本检索应用程序的应用程序(用 D2010 编写)...它有一个问题列表,以及相应的答案。大多数答案都是纯文本,但有些答案有图形和格式。我的困境与格式化的答案有关。用户应该能够复制此答案(格式和图形),以便将其粘贴到另一个应用程序中。我曾尝试使用 Word OCX。这有点问题。用户必须有字,在虚拟机内使用时会出现随机错误等。我现在正在使用内置浏览器组件,并将数据查看为 PDF。这很好也很简单,但是当我复制和粘贴它时,我失去了所有格式,并且图形显示为一个完全黑色的大框。

我可以以我选择的任何格式存储数据。它作为 BLOB 存储在 DB 文件中。我将它写入一个临时文件,然后我调用某种类型的查看例程,所以我在那里有灵活性。我的问题是,什么查看器机制易于实现,允许复制/粘贴,同时保持文本格式(项目符号、缩进等)和图形。

谢谢, GS

【问题讨论】:

  • 您正在寻找可以复制和粘贴带有图形的格式化文本的文字处理器?你可以看看wptools.com。这个组件我用了很长时间了,很成熟也很强大。

标签: delphi text graphics viewer formatted


【解决方案1】:

TRichEdit(或任何 TRichEdit 后代或类似类)将允许用户可视化文本格式和图像,并且当复制内容时,数据的 RTF 表示将被复制到剪贴板中。

将剪贴板数据粘贴到与 RTF 兼容的文本编辑器(如写字板和 Word)中时,所有格式、项目符号和图像都会被保留。

【讨论】:

  • RichEdit 似乎可以处理文本和格式,但无法处理图形……还是我遗漏了什么?
  • RTF 格式能够处理图形、图像和通过 OLE 嵌入任何其他文件。但是标准的 Delphi TRichEdit 有一些限制。如果您可以使用 JediVCL(或其他第三方富编辑控件),您可以自己尝试:打开写字板,插入文本、项目符号、图像/图形并保存 RTF 文件。在您的应用程序中添加 YourJvRichEdit.LoadFromFile('C:\YourFile.RTF'); , 并且所有的 RTF 内容都会被处理。
  • 这是因为 Delphi 中的 TRichEdit 组件使用了 Rich Edit control version。 JVCL 的版本比 Delphi 的版本更新。 François Gaillard 写了一篇很好的帖子 Using Richedit 4.1 with D2010 解释了如何在 Delphi 2010 中升级您的富编辑控件。
最近更新 更多