Хранение и отображение декорированного текста на нескольких платформах - PullRequest
1 голос
/ 07 августа 2011

Я создаю приложение, которое будет доступно на нескольких платформах (web, iphone, android ...).Все они отображают данные из одной и той же базы данных.

Каков наилучший способ хранения некоторого декорированного текста в базе данных для удобного отображения на всех платформах?Говоря «оформленный текст», я имею в виду такие элементы, как жирный шрифт, курсив, подчеркивание ...

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

Есть мнения?:)

Ответы [ 2 ]

0 голосов
/ 13 марта 2017

Я еще не пробовал, но выглядит многообещающе:

https://uncodin.github.io/bypass/

Он использует язык уценки для отправки форматированного текста и его отображения.

0 голосов
/ 22 января 2012

Звучит как забавный вопрос!

Если вы развертываете на нескольких платформах, я рекомендую использовать одну из двух стратегий:

  1. храните текст в форматах «Текст» во всех базах данных (SQlite / CoreData для Android / iOS), так что вы можете использовать текст в кодировке html, а также полужирный, курсив и другие разметки / разметки
  2. используйте библиотеку regex для анализа всей разметки

Для # 2 вы увидите стратегии в этом SO вопросе с пользовательской библиотекой регулярных выражений для анализа строковых тегов.

Возможно, вы захотите использовать markdown , который представляет собой специфический набор языка разметки для Fireball и имеет библиотеку для его поддержки, или текстиль, который имеет столь же превосходную разметку библиотеки и SO вопросы.

Итак, выберите язык разметки, сохраните свой текст в базе данных для обработки этих значений и настройте библиотеки синтаксического анализатора на каждой платформе для его обработки. Документируйте свои усилия, размещайте код на github или вносите вклад в существующие базы разбора.

Надеюсь, это поможет!

...