Как программно убрать жирный шрифт из отчета
Раздел: Разработки Fast Reports
Всем привет!
Перед разработчиком встал вопрос: 1 из 10 клиентов хочет, чтобы бланки, которые выдает FastReport VCL 6.9.3 были без выделения жирным!
Вопрос знатокам: как перед выдачей отчет программно удалить <b></b> из всех текстовых Memo и в принципе снять свойство Bold, если такое применено ко всей метке?
Delphi 10.3.3
Комментарии
Перед формированием отчёта пройдитесь по всему списку TfrxReport.AllObjects и замените <b> и</b> на пустую строку у всех текстов TfrxMemoView
Спасибо! Предполагал такое решение, только не понимаю в какой момент? Перед PrepareReport после или есть ещё какой-нибудь PreparePrepare? И поменяются ли таким образом метки, которые целиком отмечены как "B" редактором шрифтов?
Перед PrepareReport. Не поменяются. Там установлен Font.Style
Спасибо, все получилось!
Если вдруг кому понадобится, вот код:
procedure TMainForm.DeleteBoldFromTemplate;
var
i : integer;
l: TList;
c: TfrxComponent;
begin
l := fr_report.AllObjects;
for I := 0 to l.Count - 1 do
begin
c := l[i];
if (c is TfrxMemoView) then
with TfrxMemoView(c) do
begin
Font.Style := [];
Text := StringReplace(Text, '<b>', '', [rfReplaceAll, rfIgnoreCase]);
Text := StringReplace(Text, '</b>', '', [rfReplaceAll, rfIgnoreCase]);
end;
end;
end;