【问题标题】:How do I render rich text to an image?如何将富文本呈现到图像?
【发布时间】:2009-05-12 22:25:21
【问题描述】:

我正在尝试创建富文本 DataGridViewCell。我可以托管 RichTextBox 作为编辑控件,但是当单元格不处于编辑模式时,我需要自己绘制富文本。我不想解析文本 - 我只需要一个与富文本一起使用的 Graphics.DrawString 等价物。

【问题讨论】:

    标签: c# .net winforms richtext


    【解决方案1】:

    Here's an example 您可以在其中向富文本框添加打印功能。它基本上只是将富文本复制到用于打印的 Graphics 对象。我认为您可以修改它以改用您自己的图形对象,并且基本上“打印”到图像。

    编辑:

    Here's a post 似乎有人修改了用于创建图像的打印代码。

    【讨论】:

    • 这是我应该给出的答案。我在自定义绘制的树视图中使用了类似的方法,以便对其进行双重缓冲,并且效果非常好。
    【解决方案2】:

    我认为 WinForms 中没有解决方案可以为您做到这一点。这里最好的方法可能是使用RichTextBox 进行普通渲染和编辑,并在不处于编辑模式时将其锁定(将Locked 设置为true)。

    【讨论】:

    • 当单元格不处于编辑模式时,不显示 DataGridViewCell 的编辑控件 - 即使我无法访问屏幕上的 RichTextBox 实例,我也需要能够呈现文本.
    • 打印到基于图像的自定义图形设备上下文。这是 winforms 的原生部分。
    猜你喜欢
    • 2020-07-23
    • 1970-01-01
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 2022-09-02
    • 2021-11-14
    相关资源
    最近更新 更多