Delphi: лучший способ конвертировать RTF в текст - PullRequest
6 голосов
/ 09 июля 2010

Мне нужно конвертировать RTF в обычный текст. Раньше я писал функцию, которая удаляет заголовки RTF, но она никогда не бывает идеальной.

Таким образом, одним из вариантов может быть использование TRichEdit, созданный во время выполнения (что-то вроде описанного здесь , но, конечно, во время выполнения). Но есть ли другой способ? Есть ли функция RTL для этого или лучший подход?

UPDATE:

В этом вопросе Я написал окончательный вариант моей процедуры rtf to text.

Ответы [ 2 ]

4 голосов
/ 09 июля 2010

Если вы действительно хотите найти способ сделать это преобразование, вам следует взглянуть на то, как класс TConversion реализован в классе TRichEditStrings. Эти классы находятся в ComCtrls.pas. Поняв, как выполняется преобразование внутри элементов управления RichEdit, вы сможете написать свой собственный.

Однако, рассматривая практические аспекты реализации этого и не зная, каковы требования к производительности для вашего вопроса, я бы остановился на подходе преобразования TRichEdit, изложенном в вашей ссылке.

0 голосов
/ 10 июля 2010

Страница

  • http://www.delphipraxis.net/152766-rtf-nach-html.html для некоторых указателей на компоненты, библиотек и других источников для преобразователей RTF, некоторые из них включают параметр преобразования RTF в текст.*

  • ScroogeXHTML , библиотека для преобразования RTF в HTML / XHTML, может быть полезной.Он поддерживает подмножество стандарта RTF и легко настраивается.Имеется опция формата экспорта в формате PlainText.Примечание: я являюсь автором ScroogeXHTML для Delphi / ScroogeXHTML для платформы Java.Это коммерческий продукт.

...