TQRRichText中如何设置字间距及行间距???对此问题本人愿追加分数 (300分)

  • 主题发起人 主题发起人 anna_zb
  • 开始时间 开始时间
A

anna_zb

Unregistered / Unconfirmed
GUEST, unregistred user!
打印报表时使用TQuickRep控件,其中页面上有TQRRichText。
但不知如何设置TQRRichText的字间距及行间距???
 
TQRRichText的ParentRichEdit属性指向一个RichEdit控件,
你可以操控该控件来设置RichText的文本属性。
例:

var
Re: TRichEdit;
cf: TCharFormat
begin

Re:=QrRichText1.ParentRichEdit;
Re.SelectAll;
// 选中全部文本
cf.cbSize:=SizeOf(cf);
cf.dwMask:=CFM_SIZE;
// 指定取当前字符的高度(包括行距部份)
SendMessage(Re.Handle,EM_GETCHARFORMAT,true,LPARAM(@cf));
// 取选中文本的行距
cf.yHeight:=cf.yHeight * 2;
// 行距乘倍
SendMessage(Re.Handle,EM_SETCHARFORMAT,true,LPARAM(@cf));
// 设置选中文本的行距
end;

 
接受答案了.
 
经测试skyweb的答案实际上是改变字体的大小,我的要求是在不改变字体大小的前提下改变
行间距.
 
请参考Win32 API帮助文件关于 EM_GETCHARFORMAT、EM_SETCHARFORMAT消息和
CHARFORMAT、CHARFORMAT2结构的描述。
 
CHARFORMAT2结构根本无法使用,仅能使用CHARFORMAT结构
 
TQRRichText中如何设置字间距及行间距???对此问题本人愿追加分数
 
后退
顶部