Используйте RichEdit.
Отцентрировать текст:
Код:
ARichEdit.Paragraph.Alignment := taCenter;
Раскрасить текст:
Код:
ARichEditSelAttributes.Color := clRed;
Изменить шрифт:
Код:
ARichEdit.SelAttributes.Name := 'Arial';
Paragraf здесь - либо выделенный кусок текста, либо абзац, на котором установлен курсор. Курсор позиционируется через SelStart.
SelAttributes - аттрибуты выделенного куска текста: цвет, фонт.
Чтобы выделить текст, например, с 1 по 10-й символ:
Код:
ARichEdit.SelStart := 0;
ARichEdit.SelLength := 10;
Естественно, придется самому заботиться о том, чтобы текст RichEdit форматировался в зависимости от тэгов. Ну и при сохранении в соответствии с форматированием обрамлять текст нужными тэгами тоже - самостоятельно.