Delphi. TRichView. Как добавить изображение и сохранить его в базе в нормальном HTML формате?

В прошлом посте мы сохраняли в базу контент в HTML формате, но проблема была в том, что программа c TRichView копировала изображение в некую директорию и прописывала пути относительно неё. Оно и записывалось и читалось корректно, но в пределах одного компьютера. Если же, скажем, нам нужно прочитать контент, в котором картинка на некотором удаленном сервере, а пусть даже и на локальном, то такой вариант бы не прокатил. Короче, хотелось сделать по нормальному, по человечески, как это работает в традиционном WEB.

То есть, если картинка, то в базе она должна записываться как

а не просто

Как же этого добиться? Пару дней покопавшись с документацией TRichView я пришел к такому вот решению. 

Прежде всего, нам нужно обработать событие RvHtmlImporterImageRequired2 у компонента RvHtmlImporter

7

 

вот таким вот образом…

Далее, нам нужно обработать событие OnSaveImage2 у компонента RichViewEdit

Теперь, если поработать с программой, то код в базе будет выглядеть например так…

Как видно – картинки отображаются адекватно теперь.

This entry was posted in Delphi, TRichView. Bookmark the permalink.