标签: rtf

rtf 文件中的编码类型错误

我正在尝试读取 rtf 文件并提取其中的字符。\n例如 下面是 \xd1\x84 的 rtf 版本

\n\n
\n

{\\rtf1\\ansi\\ansicpg1252\\fromtext \\fbidis \\deff0{\\fonttbl\n {\\f0\\fswiss\\fcharset0 Arial;} {\\f1\\fmodern Courier New;}\ n {\\f2\\fnil\\fcharset2 Symbol;} {\\f3\\fmodern\\fcharset0 Courier New;}\n {\\f4\\fswiss\\fcharset204 Arial;}}\n {\\colortbl \\red0\\green0\\blue0;\\red0\\green0\\blue255;}\n \\uc1\\pard\\plain\\deftab360 \\f0\\fs20 \\htmlrtf{\\f4\\ fs20\\htmlrtf0\n \\\'f4\\htmlrtf\\f0}\\htmlrtf0 \\par }

\n
\n\n

正如你所看到的,这里的编码是 Windows-1252

\n\n
#!/usr/bin/perl\nuse strict;\nuse utf8;\nuse Encode qw(decode encode);\n\nbinmode(STDOUT, ":utf8");\nmy $runtime = chr(0x0444);\n   print "theta || ".$runtime." ||";\n\n  my $hexstr = "0xF4";\n  my $num = hex $hexstr;\n  my $be_num = pack("N", $num);\n  $runtime = decode( "cp1252",$be_num);\n  print "\\n".$runtime."\\n";\n\n$runtime = decode( "cp1251",$be_num);\n  print "\\n".$runtime."\\n"\n …
Run Code Online (Sandbox Code Playgroud)

perl rtf

1
推荐指数
1
解决办法
1721
查看次数

在 C# 中将 2 个 RichTextbox 中的富格式文本追加到另一个 RichTextBox 中

我有 3 个 RichTextBox:richTextBox1、richTextBox2 和 richTextBox3。

我运行该应用程序并在文本框 1 和 2 中输入文本。

因此,richTextBox1 的文本是“Test”,richTextBox2 的文本是“ing”。

我现在想将该文本附加在一起并将其放入另一个 richTextBox 中(保留任何格式,如粗体、下划线等......)

所以我尝试以下代码:

richTextBox3.Rtf = richTextBox1.Rtf + richTextBox2.Rtf;
Run Code Online (Sandbox Code Playgroud)

这不会导致任何错误,但我只从 richTextBox1 获取文本。所以我得到“测试”。

那么如何在保留格式的情况下复制 2 个 RichTextBox 的内容呢?

rtf richtextbox c#-4.0

1
推荐指数
1
解决办法
1759
查看次数

rtf文件的编码

我得到一个代表 rtf 文件的 base64 编码字符串。

\n\n

如果我查看原始文本表示(在 Base64 编码之前),我会看到字符序列F\xc2\xb8rF\xc3\xbcr当在查看器中显示时,这应该代表。rtf 文件的标头包含,ansicpg1252因此这应该是编码,除非另有更改(转义序列、字体定义等)。

\n\n

我现在的问题是我无法将 Base 64 字符串正确解码为其原始表示形式。我再也得不到了F\xc2\xb8r。相反,我有F\xc3\xbcr或什至F\\\'fcr。因此,在查看器中显示解码后的 rtf 时,变音符号的表示是错误的。

\n\n

那么rtf文件的原始编码是什么?或者这里出了什么问题?

\n\n

您可以在此处查看示例文件。是我得到的 Base 64 编码字符串。

\n\n

编辑:

\n\n

我没有编码的代码,但我想我可以重建它。这是我的代码:

\n\n
string path = "/some/path/ltxt1 Kopie.rtf";\nbyte[] document = File.ReadAllBytes(path);\nstring base64string = Convert.ToBase64String(document);\nvar isoBytes = Convert.FromBase64String(base64string);\n\nFile.WriteAllText ("/some/path/sketch.rtf", System.Text.Encoding.GetEncoding("iso-8859-1").GetString(isoBytes));\n
Run Code Online (Sandbox Code Playgroud)\n\n

我尝试更改编码,但windows-1252出现错误(草图:不支持编码名称,实际项目:数组不为空)。

\n

c# base64 encoding rtf character-encoding

1
推荐指数
1
解决办法
1万
查看次数

BI Publisher > 避免表格拆分为下一页

我有一个 BIP rtf 模板,其中有一个包含一堆字段的表。该报告由多条记录组成,而不仅仅是一条记录。现在的要求是,如果下一个记录表适合同一页,则将其放在同一页上,否则将其打印在下一页上。

例如:它应该是这样的:

在此输入图像描述

相反,编号 1-236586771 应该从第 2 页开始。

这是我尝试解决此问题的方法,但到目前为止还没有成功:

  1. 取消选中“允许跨页断行” 在此输入图像描述
  2. 在该段落中,选择“与下一个保持一致”和“将行保持在一起” 项目清单

请这些是我的示例 xml 和 rtf: xmlrtf

请我需要帮助来解决这个问题。

rtf bi-publisher

1
推荐指数
1
解决办法
1万
查看次数

在 Swift 中以编程方式将富文本转换为纯文本

在应用程序 TextEdit 中,可以通过以下过程转换富文本:格式、制作纯文本。我如何在 Swift 中执行此操作?

我使用 NSPasteboard 框架:

let pasteboard = NSPasteboard.general
Run Code Online (Sandbox Code Playgroud)

...

pasteboard.declareTypes([NSPasteboard.PasteboardType.string], owner: nil)
Run Code Online (Sandbox Code Playgroud)

...

为了检索剪贴板内容:

var clipboardContents = ""
Run Code Online (Sandbox Code Playgroud)

...

clipboardContents = pasteboard.string(forType: .string) ?? "Something went wrong"
Run Code Online (Sandbox Code Playgroud)

最后一条语句在控制台窗口中生成纯文本,但是在 TextExit 等其他应用程序中使用剪贴板内容时不会转换为纯文本。非常感谢您的帮助!

macos xcode rtf nspasteboard swift

1
推荐指数
1
解决办法
1832
查看次数

如何在C#中将.txt文件上传为.rtf文件?

如果我想在richTextBox上显示它,如何将预先存在的.txt文件作为.rtf文件加载到我的C#代码中?我正在运行Visual Studios Windows应用程序.

非常感谢你.

c# rtf richtextbox

0
推荐指数
1
解决办法
487
查看次数

用于Windows窗体应用程序的简易报告工具,RTF报告?

我用C#和MySQL创建了一个Windows Forms应用程序(使用MySQL Connector).现在我需要从我的MySQL数据库中的数据创建一些报告,然后将其打印出来.

我已经尝试过Crystal Reports,Visual Studio 2010报告等等,但使用我的实体数据集似乎都很复杂.

我正在使用LINQ来获取查询.有什么办法可以创建像HTML格式的报告,只需通过应用程序打印它们吗?有人让我把我的数据作为RTF直接发送而不保存或打印,但我找不到像这样创建RTF的好教程.

.net c# reporting rtf winforms

0
推荐指数
1
解决办法
1万
查看次数

从RTF中提取图像

我需要imagesRTFOSX上的格式中提取.(NSAttributedStrings不这样做)我试图这样做regexp(我不知道更好的方式).但据我所知RTF,regexp解析起来太难了.请帮帮我,我该怎么做?

rtf image

0
推荐指数
1
解决办法
2290
查看次数

C#richTextBox间距问题?

我正在为我编写的聊天服务器程序编写客户端,该程序使用richTextBox控件来显示用户文本.一切都有效,除了我用于服务器motd的一些ASCII艺术.运行它时,我的文本显示如下.如您所见,间距似乎有问题. 在此输入图像描述

现在,如果我使用完全相同的字体在记事本中输入它,我就会得到这个.为什么richTextBox不显示相同的结果?我真的很困惑.....

在此输入图像描述

编辑:问题是由服务器发送的RTF引起的.如何在RTF中添加额外空间?

c# rtf richtextbox winforms

0
推荐指数
1
解决办法
899
查看次数

从rtf解码base64图像

在我的rtf文档中,我想从字符串中提取图像:字符串是这样的:

    \pard\pard\qc{\*\shppict{\pict\pngblip\picw320\pich192\picwgoal0\pichgoal0 
    89504e470d0a1a0a0000000d4948445200000140000000c00802000000fa352d9100000e2949444[.....]6c4f0000000049454e44ae426082
}}
Run Code Online (Sandbox Code Playgroud)

问题:1)这真的是base64吗?

2)如何使用下面的代码解码它.

import base64

imgData = b"base64code00from007aove007string00bcox007idont007know007where007it007starts007and007ends"

with open("imageToSave.png", "wb") as fh:
    fh.write(base64.decodestring(imgData))
Run Code Online (Sandbox Code Playgroud)

完整的rtf文本(保存为.rtf显示图像时)位于:

http://hastebin.com/axabazaroc.tex

python base64 rtf

0
推荐指数
1
解决办法
676
查看次数

使用 Swift 4 和 Xcode 使用捆绑包中 RTF 文件中的数据加载文本视图

我当前正在读取文本文件并将该信息加载到文本视图中。我有 100 多个项目,每个项目都有相当多的文本,因此这种方法效果很好。

我的问题是,我想将一些文本设为粗体,但无法使用标准文本文件来做到这一点,所以我想知道如何修改我当前拥有的代码,以便它加载 RTF 文件而不是文本文件的内容,当然在文本视图中正确显示。

let myString = String(indexNumber)
let detailFile = "detail" + myString
if let filepath = Bundle.main.path(forResource: detailFile, ofType: "txt") {
    do {
        let contents = try String(contentsOfFile: filepath)
        detailsTextView.text = contents
    } catch {
        detailsTextView.text = detailFile + " contents could not be loaded"
    }
} else {
    detailsTextView.text = detailFile + " detail file could not be found"
}
Run Code Online (Sandbox Code Playgroud)

rtf ios swift

0
推荐指数
1
解决办法
1605
查看次数

如何存储谷歌文档等文件?

我很感兴趣google docs如何在服务器端存储文档,因为我需要创建类似的应用程序.

它使用纯RTF/ODF文件还是拥有数据库?他们如何使版本控制和撤消/重做功能成为可能?

如果有人知道这个问题请与我分享.

javascript rtf google-docs odf

-1
推荐指数
1
解决办法
379
查看次数