Как можно преобразовать текст RTF в простой текст Скидки-с-цены-syntaxed в Какао?

Я должен смочь преобразовать RTF или HTML к простому тексту Скидки-с-цены-syntaxed для загрузки на мой сервер. Я должен достигнуть этого в Cocoa/Obj-C 2.0. Кто-либо знает, как сделать это?

Большое спасибо —» Alex.


Отредактированное 16:53 в четверг

Umm. В ответе на комментарий Yuji я пытаюсь сделать NSStatusItem капелька, которая принимает текст. Не имеет значения, в каком формате текст находится, но я должен смочь отформатировать его или как простой текст или как простой текст, отформатированный со Скидкой с цены. Я предполагаю, так как я не знаю, какой текст я буду получать...

8
задан Alexsander Akers 20 May 2010 в 21:01
поделиться

2 ответа

Ооо, это будет сложно. Как сказал Юджи, в HTML / RTF можно выразить гораздо больше, чем в уценке. В таком случае ...

Я бы преобразовал содержимое в NSAttributedString . Вы можете легко построить NSAttributedString из данных RTF; HTML будет намного сложнее. Однако как только вы это сделаете, нужно будет проверить все атрибуты в строке и применить эквивалентную уценку к текстовой версии содержимого.

Дополнительные исследования:

  • Markdownify - преобразование HTML в Markdown в PHP
  • Pandoc - преобразование уценки (и некоторых форматов) в другие форматы RTF. Он поддерживает Markdown => RTF, поэтому вы, возможно, можете использовать его для создания обратного преобразования.
2
ответ дан 5 December 2019 в 20:14
поделиться

Вот форматы, которые pandoc анализирует и записывает:

> pandoc --help
pandoc [OPTIONS] [FILES]

Input formats:  native, markdown, markdown+lhs, rst, rst+lhs, html, 
latex, latex+lhs

Output formats:  native, html, html+lhs, s5, docbook, opendocument, odt, latex, 
latex+lhs, context, texinfo, man, markdown, markdown+lhs, plain, rst, rst+lhs, 
mediawiki, rtf

К сожалению, rtf не является одним из форматов, которые он анализирует. Это программа на Haskell, поэтому получить ее без установки платформы Haskell неудобно.Из проанализированного документа он может написать своего рода «простой» суб-Markdown, или стандартный Markdown, или свой собственный расширенный Markdown, а также множество других форматов. Внутреннее («родное») представление намного богаче, чем требует стандартная спецификация Markdown, поэтому будет потеряно меньше информации, и вы сможете восстановить html для своей уценки - или создать PDF-файл через латекс и т. Д. довольно легко взломать его для специальных целей .

Я не знаю, стабильны ли какие-либо из них, но растет число привязок к библиотекам Pandoc с других языков. Поиск на Github показывает, что наиболее подходящим для подключения к Obj C является простой C libpandoc . Похоже, что Ruby наиболее активен - я думаю, потому что это github - с pandoku , pandoc-ruby , rails-pandoc и так далее.

4
ответ дан 5 December 2019 в 20:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: