我正在研究一个使用Gtk3 TextView / TextBuffer来获取用户输入的Python 3项目,并且可以使用户键入富文本并将其格式化为粗体/斜体/下划线/这些的组合。
但是,我一直试图找出如何从包含这些标志的TextBuffer中获取文本,因此我可以在需要时使用格式标志将文本转换为正确格式的HTML。
调用textbuffer.get_text(start, end, True)
仅返回不带任何标志的文本。
这是the code和the editor.glade
file。将它们都保存在同一目录中。
如何获得带有标志的文本?或者,是否有一种方法可以自动在另一个变量中自动将用户输入的格式设置为HTML?
最佳答案
那不是很容易。 Here是一些代码的链接,我曾经编写这些代码以对RTF输出执行相同的操作。您可能可以对其进行调整以产生HTML输出。如果您设法做到这一点,我可能会将其集成到该库的后继程序中。
另外,如果您更喜欢上面的文本处理,则可以采用GtkTextBuffer的内部序列化格式导出富文本格式,并稍后自己将其转换为HTML:
format = textbuffer.register_serialize_tagset('my-tagset')
exported = textbuffer.serialize(textbuffer, format, start, end)