我需要能够将RTF或HTML转换为Markdown语法的纯文本以便上传到我的服务器.我需要在Cocoa/Obj-C 2.0中实现这一点.有谁知道如何做到这一点?
非常感谢 - »Alex.
嗯.在回答Yuji的评论时,我正在尝试制作一个NSStatusItem接受文本的Droplet.文本的格式无关紧要,但我需要能够将其格式化为纯文本或使用Markdown格式化的纯文本.我想因为我不知道我会收到什么样的文字......
我从来没有做过大量的RTF处理,我总是使用一个库来读取或生成一个,这是很久以前的事了.现在我需要再次与格式更加亲密,并最终将其转换为XML.
你能推荐一条好的路径,这样我就可以很好地控制如何解析和处理RTF块吗?
最初,我认为Perl加上一些好的库将是一个不错的选择,但欢迎所有的意见.
我有一组存储在C#中的字符串的RTF是将它们合并到一个文档中进行打印的方法,因为用户想要将它们打印为一个文档,打印设置出现一次.如果有必要,我可以使用办公室互操作,显然避免这样做更好.
编辑:每个文档之间需要分页,我认为我可以插入\页面
我需要从PHP中生成一个RTF.我在那里看过几个图书馆,但想知道是否有人使用过任何图书馆,或者他们只是手工编码自己(我完全可以做).有什么意见吗?TIA
不幸的是,我不能使用rtf2latex2e,因为它说DropUNIX"不再支持经典环境".除了将我的.rtf文件放到DropUNIX程序上之外,我几乎不知道我在做什么.
我还能用什么?我不介意它是哪种类型的文件我正在转换为LaTeX(.doc也可以,只要它保持我的格式).
我使用的是Mac OS 10.5.8.
如何在iText文档中添加新页面?document.newPage();似乎不起作用.
我正在使用来自http://sourceforge.net/projects/itextrtf/的支持RTF的iText
我的部分代码:
Font titleFont = new Font(Font.COURIER, 14, Font.BOLD);
document.add(new Paragraph("Title1", titleFont));
Table table = new Table(4);
table.setBorderWidth(0);
// Filling table
document.add(table);
document.newPage();
document.add(new Paragraph("Title2", titleFont));
Table table = new Table(4);
table.setBorderWidth(0);
// Filling table
document.add(table);
Run Code Online (Sandbox Code Playgroud) 您可能会说在stackOverflow中有很多关于此的讨论,但是大多数都比我需要的更复杂,主要用于其他语言.
我有一个MySQL远程数据库,其中我有一个"帮助"表,其中包含用于填充使用此数据库的动态网站的帮助页面的代码.
我决定制作一个Delphi应用程序来管理该网站,而不是通过网站本身来提高速度和安全性.
我想用一个TRichEdit来制作帮助文本并使用简单的东西,如对齐,粗体,斜体和带下划线的样式.我不想使用图片和字体.
如何选择丰富的样式文本并将其转换为HTML以放入远程数据库中的BLOB字段,然后如果我想再次编辑它,则重新转换为富文本?
我想在RichTextBox中隐藏部分文本.我知道\ v是隐藏部分的开始.但我怎么取消隐藏?例如,如果我想在字符串"hello big world"中隐藏单词"big",以便"hello world"可见:
text : "hello big world"
RTF so far : "hello \v big world"
result : "hello "
wanted result -> : "hello world"
doesn't work : "hello \v big\v world"
Run Code Online (Sandbox Code Playgroud)
我有rtf包含嵌入对象(图像)的文档.我需要将其作为Image对象(或任何其他可用格式)提取.我已经查看了这个CodeProject文章,但默认的应用程序没有正确呈现它们(它们呈现'默认图像'图像,而不是图像本身),所以我继续前进.

以下是RTF代码的示例(由于大小,我不得不缩短它):
{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\lang1033\f0\fs18{\object\objemb{\*\objclass Package}\objw855\objh810{\*\objdata
01050000
02000000
08000000
5061636b61676500
00000000
00000000
1f900000
02007369675f5f2e6a706700433a5c55736572735c726563657074696f6e5c4465736b746f705c
5369676e6174757265735c7369675f5f2e6a7067000000030034000000433a5c55736572735c52
45434550547e315c417070446174615c4c6f63616c5c54656d705c7369675f5f20283132292e6a
706700c18e0000ffd8ffe000104a46494600010101004800470000ffdb00430001010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101ffdb00430101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101ffc0001108012c03e803012200021101031101ffc4001f00010002030002
0301000000000000000000090a07080b050602030401ffc4003f10000006030001040201030301
04070900000203040506010708090a11121314152116172223314118192532591a24576598d6d8
2933384651788497b7ffc4001a010101000301010000000000000000000000030204050106ffc4
002b11010003010100020103030402030000000002030401051112130614211522230731415124
32536162ffda000c03010002110311003f00bfc000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000
...
005c0072006500630065007000740069006f006e005c004400650073006b0074006f0070005c00
5300690067006e006100740075007200650073005c007300690067005f005f002e006a00700067
00
01050000
00000000
}{\result{\pict\wmetafile8\picw2010\pich1905\picwgoal855\pichgoal810
0100090000033b0700000200210600000000050000000b0200000000050000000c02350038001c
000000fb02f4ff000000000000900100000001000000005365676f65205549000e0a52104c2308
00dd1900d894ef758001f3758d0e664a040000002d010000050000000902000000000500000001
02ffffff00a5000000410bc600880020002000000000002000200000000c002800000020000000
400000000100010000000000000100000000000000000000000000000000000000000000ffffff
...
0021001c001c000000fb021000070000000000bc02000000000102022253797374656d00008d0e
664a00000a0022008a0100000000ffffffff8cdd1900040000002d010100030000000000
}}}\par
}
Run Code Online (Sandbox Code Playgroud) 我有一个rtf文件,其中有一些带有项目符号的文本,如下面的屏幕截图所示
我想提取数据和子弹,但是当我在控制台中打印时,我得到了垃圾值.如何从控制台打印完全相同的内容.我尝试的方式如下
public static void main(String[] args) throws IOException, BadLocationException {
RTFEditorKit rtf = new RTFEditorKit();
Document doc = rtf.createDefaultDocument();
FileInputStream fis = new FileInputStream("C:\\Users\\Guest\\Desktop\\abc.rtf");
InputStreamReader i =new InputStreamReader(fis,"UTF-8");
rtf.read(i,doc,0);
System.out.println(doc.getText(0,doc.getLength()));
}
Run Code Online (Sandbox Code Playgroud)
控制台输出:
我认为垃圾值是由于控制台不支持chareset所以我试图生成一个pdf文件,但在pdf中我也得到相同的垃圾值.这是pdf代码
Paragraph de=new Paragraph();
Phrase pde=new Phrase();
pde.add(new Chunk(getText("C:\\Users\\Guest\\Desktop\\abc.rtf"),smallNormal_11));
de.add(pde);
de.getFont().setStyle(BaseFont.IDENTITY_H);
document.add(de);
public static String getText() throws IOException, BadLocationException {
RTFEditorKit rtf = new RTFEditorKit();
Document doc = rtf.createDefaultDocument();
FileInputStream fis = new FileInputStream("C:\\Users\\Guest\\Desktop\\abc.rtf");
InputStreamReader i =new InputStreamReader(fis,"UTF-8");
rtf.read(i,doc,0);
String output=doc.getText(0,doc.getLength());
return output;
}
Run Code Online (Sandbox Code Playgroud)