【问题标题】:WPF RichTextBox: Output RTF is different from inputWPF RichTextBox:输出RTF与输入不同
【发布时间】:2013-12-12 08:55:14
【问题描述】:

我正在从客户端应用程序加载一个有效的 RTF(假设只是一个二进制图像)字符串。

这个 RTF 被加载到 WPF RichTextBox 控件中,然后,在不修改内容的情况下,我从 RichTextBox 中将其发送回客户端应用程序(因此 RTF 内容没有发生任何变化)。

但现在的 RTF 内容完全不同了。现在,它仍然是一个有效的 RTF(如果我将它复制到一个“test.rtf”文件中,图像就会正确显示)。但现在在客户端应用程序中,图像没有显示。

如果我再次将“修改后的”RTF 从客户端应用程序发送到我的应用程序,则图像会显示在我的应用程序中。但同样,将其发送回客户端应用程序时,该图像并未显示在那里。

所以,总而言之,图像没有丢失,但不知何故,我猜想在我的 RichTextBox 中设置内容时,RTF 格式(或标准)发生了变化强>控制。

输入 RTF(来自客户端):

{\rtf1\ansi\ansicpg1252\deff0\deflang1036{\fonttbl{\f0\fnil\fcharset0 Tahoma;}}
{\*\generator Msftedit 5.41.21.2510;}
\viewkind4\uc1\pard\sa200\f0\fs20
{\pict\wmetafile8\picw17017\pich7624\picwgoal9360\pichgoal4200 
010009000003d04204000000a742040000000400000......

在 RichTextBox 中设置后的 RTF:

{\rtf1\ansi\ansicpg1252\uc1\htmautsp\deff2{\fonttbl{\f0\fcharset0 Times New Roman;}
{\f2\fcharset0 Segoe UI;}{\f3\fcharset0 Tahoma;}}
{\colortbl\red0\green0\blue0;\red255\green255\blue255;}
\loch\hich\dbch\pard\plain\ltrpar\itap0
{\lang1033\fs20\f3\cf0 \cf0\ql{\f3 {\ltrch {\*\shppict{\pict\picwgoal9360\pichgoal4200\pngblip
89504e470d0a1a0a0000000d494844......

有什么帮助吗?谢谢:)

【问题讨论】:

    标签: .net wpf richtextbox rtf


    【解决方案1】:

    WPF RichTextBox 仅支持有限使用处理图像。相对链接、图形元文件和非 JPG、PNG 或 GIF 格式的图像是一些明显的不兼容性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-26
      • 2019-08-23
      • 2012-12-14
      • 2016-05-16
      • 1970-01-01
      • 2012-12-04
      • 1970-01-01
      • 2021-07-21
      相关资源
      最近更新 更多