В отчёте требуется вписать текст в фиксированный по ширине TfrxMemoView, используя уменьшение размера шрифта. Как это реализовать?
Question: В отчёте требуется вписать текст в фиксированный по ширине TfrxMemoView, используя уменьшение размера шрифта. Как это реализовать?
Answer:
Используйте функцию TfrxMemoView.CalcWidth в обработчике TfrxMemoView.OnAfterData:
1 2 3 4 5 6 |
procedure Memo1OnAfterData(Sender: TfrxComponent); begin Memo1.Font.Size:=10; if Memo1.CalcWidth>Memo1.Width-Memo1.GapX*2 then Memo1.Font.Size:=Trunc(Memo1.Font.Size*((Memo1.Width-Memo1.GapX*2)/Memo1.CalcWidth)); end; |