Brovin Yaroslav

[TfgRichEdit]- компонент редактирования текста с поддержкой форматирования

В теме 33 сообщения

Приступил к созданию компонента по отображению текста с поддержкой форматирования для настольной версии клиента, чтобы отображать HTML разметку постов.

На текущий момент уже поддерживаются следующие возможности:

  1. Параграфы и просто блоки текста (<p>, <span>)
  2. Изменение цвета для любого текста (color)
  3. Изменение параметров шрифта (размер, название, стиль) (font-size, font-style, font-weight, font-family, <b>, <strong>)
  4. Разрыв строки (<br/>)

 

post-1-0-05614500-1436392772_thumb.png

post-1-0-58172400-1436392772_thumb.png

post-1-0-15969900-1436392773_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

наканецтта! Ярослав, это будет бесплатный класс? плииз скажи что да :D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ярослав, а в каких Delphi будет поддерживаться? Только XE8, или захватит и XE7 ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я так понимаю это будет встроенно в настольную версию клиента для форума, т.к. бесплатных аналогов нет.

плюс расширение библиотеки FGX, отлично просто.

ждём, надеюсь андроид не обидете?

Изменено пользователем ZuBy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ярослав, а в каких Delphi будет поддерживаться? Только XE8, или захватит и XE7 ?

Я бы не надеялся на то, что со старту будет поддержка хе7. Но думаю можно будет руками допилить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Этот компонент я делаю для клиента форума. Чтобы отображать простую разметку постов с форума. Я не планирую, что он будет поддерживать все. По моим планам, это базовые элементы разметки:

  1. Параграф (межстрочный интервал, отступы)
  2. Списки
  3. Картинки
  4. Изменение параметров текста (шрифт, размер, цвет, стиль)
  5. Блок кода
  6. Ссылка

Дальше посмотрим. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В текущую версию добавлена поддержка:

  1. Нумерованные списки
  2. Ненумерованные списки
  3. Форматированный код. Пока только сохранение отступов в коде и применение моношрифта. В будущем планирую добавить систему плагинов расширяющих базовые элементы разметки для реализации подсветки кода.
  4. Добавлено прокручивание текста

post-1-0-66861100-1437604603_thumb.pngpost-1-0-95272800-1437604603_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ярослав, я понимаю вопрос риторический, а когда можно будет поюзать компонент?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На текущий момент у меня есть только прототип. Не все гладно в архитектурном плане. Нужно переработать некоторые моменты внутреннего представления документа. Когда это будет готово и отлажено, тогда я думаю имеет смысл будет уже выложить компонент с базовым функционалом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На текущий момент у меня есть только прототип. Не все гладно в архитектурном плане. Нужно переработать некоторые моменты внутреннего представления документа. Когда это будет готово и отлажено, тогда я думаю имеет смысл будет уже выложить компонент с базовым функционалом.Спасибо

Спасибо, Ярослав, знайте, пользователям это компонент очень нужен)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня компонент состоит из двух частей:

  1. Внутреннее представление документа. Оно состоит из базовых элементов и служебных. Базовые - отображают что-то (текси, картинки, параграфы, списки) и служебные (перенос строк, смена параметров шрифта вложенных элементов)
  2. Парсеры.

Пока у меня есть очень в зачаточном состоянии HTML парсер, который считывает разметку и генерирует на входе представление документа. По идеи у меня заложено, что можно сделать свой парсер, который будет разбирать любой документ. Но времени на парсер особо нет. Меня больше интересует первая часть. Так как она основопологающая.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

HTMLLite парсер есть большинства из того что нужно в html и он свободный.

 

но парсер сделан конечно криво, все грузится в память. хотя по другому и не сделать. 

Изменено пользователем haword

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

HTMLLite парсер есть большинства из того что нужно в html и он свободный.

 

но парсер сделан конечно криво, все грузится в память. хотя по другому и не сделать. 

 извините за возможный оффтоп, а разве HTMLLite не для  VCL? Или я что то путаю?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работа продолжается.

  1. Добавлена поддержка расскраски Delphi кода.
  2. Создана система, позволяющая самостоятельно обрабатывать блоки документа. Например, чтобы сделать разметку кода.
  3. Значительно проработаны отступы для блоков. Добавлены внешние и внутренние отступы. 
  4. Исправлены многострочные списки. Теперь если элемент списка занимает больше одной строки, он отображается корректно.
  5. Добавлена поддержка закрашивания заднего фона.

post-1-0-39003900-1439648480_thumb.pngpost-1-0-27595000-1439648481_thumb.png

Так же этот компонент уже интегрирован в будущую настольную версию клиента форума.

post-1-0-16836900-1439648661_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Новые вести с полей.

  1. Проверена работа на Андроиде. Рендеринг прошел нормально. 
  2. Добавлена возможность указывать межстрочный интервал для параграфов.
  3. Значительно переработаны настройки. Теперь можно задавать настройки для всех элементов в целом, для всех параграфов, так и локально для одного параграфа.

post-1-0-50747800-1439829871_thumb.pngpost-1-0-06039300-1439829970_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Было бы удобно если бы компоненты ваши можно было бы ставит через getit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ярослав, а все таки когда будет доступен компонент простым пользователям? Очень нужен! ;))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как доведу до ума. Сейчас уже многое сделано, но и не мало еще. Я хочу завершить логически архитектуру, чтобы потом не вносить в нее изменения, а лишь расширять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Например, у меня на коленки писанный парсер HTML, который нужно написать корректно. Без него так же не имеет смысл выкладывать компонент.

Если кто захочет написать конвертер с одного формат во внутренний компонента, буду рад.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Например, у меня на коленки писанный парсер HTML, который нужно написать корректно. Без него так же не имеет смысл выкладывать компонент.

Если кто захочет написать конвертер с одного формат во внутренний компонента, буду рад.

Опишите подробней, может и поможем всем форумом)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

HTMLLite парсер есть большинства из того что нужно в html и он свободный.

 

но парсер сделан конечно криво, все грузится в память. хотя по другому и не сделать. 

 извините за возможный оффтоп, а разве HTMLLite не для  VCL? Или я что то путаю?

 

переделать на FM не составляет большого труда. у меня попытка переделки htmlview на fmx, находится на стадии - компилируется и запускается. но отображает не все и не шибко верно, рендерит под андроидом секунд 10 страницу с текстом whatsnew компонента, весит она правда 41 кб :) ибо резал все нещадно что не получалось по быстрому переделать под FM. потом набрел на исходники html component library и на этом со старым завязал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Появления новых компонент можно только приветствовать!

А в качестве флуда: меня удивило как возбудились присутствующие "оо, бесплатное, наконец-то!", как будто хоть один купил Delphi ))

 

Я вот максимум 2007 студию купил, намучался с вечными проблемами регистрации, после чего плюнул и перешёл на условноворованное. Думаю, 99,5% и копейки не тратили на среду )

Изменено пользователем POV

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Появления новых компонент можно только приветствовать!

А в качестве флуда: меня удивило как возбудились присутствующие "оо, бесплатное, наконец-то!", как будто хоть один купил Delphi ))

 

Я вот максимум 2007 студию купил, намучался с вечными проблемами регистрации, после чего плюнул и перешёл на условноворованное. Думаю, 99,5% и копейки не тратили на среду )

Очень странное заявление. Мы уже в одной из веток этого форума обсуждали вопросы покупки-регистрации программы. И уж точно из нее можно понять, что ваш процент в 99,5 очень завышен))). Лично я (и не только) покупаю с 2010 версии.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу