Richedit里面的内容保存为图形

字体大小: 中小 标准 ->行高大小: 标准
得到Richedit里面的内容保存为图形!

uses richedit;

procedure TForm1.Button1Click(Sender: TObject);

var

Range : TFormatRange;

LastChar, MaxLen, LogX, LogY: Integer;

begin

FillChar(Range, SizeOf(TFormatRange), 0);

with Image1, Range do

begin

LogX := GetDeviceCaps(Canvas.Handle, LOGPIXELSX);

LogY := GetDeviceCaps(Canvas.Handle, LOGPIXELSY);

hdc := Canvas.Handle;

hdcTarget := hdc;

rc.right := Image1.ClientWidth * 1440 div LogX;

rc.bottom := Image1.ClientHeight * 1440 div LogY;

rcPage := rc;

LastChar := 0;

MaxLen := GetTextLen;

chrg.cpMax := -1;

repeat

chrg.cpMin := LastChar;

LastChar := SendMessage(RichEdit1.Handle, EM_FORMATRANGE, 1,

Longint(@Range));

until (LastChar >= MaxLen) or (LastChar = -1);

end;

SendMessage(RichEdit1.Handle, EM_FORMATRANGE, 0, 0);

Image1.Refresh;

end;

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/68019.html