// Es wird der Inhalt eines TRichedit auf einem TImage - beginnend von der
// ersten Zeile an -
(transparent) abgebildet. Reicht die Größe des TImage aus,
// wird der gesamte Text angezeigt, auch wenn er im TRichedit nicht zu sehen ist.

// Getestet mit D4 unter WinME

uses richedit; 
 
var 
  fomara: _FormatRange; 
 
procedure Abbilden(image: TImage; richedit: TRichedit; transparenz: Boolean); 
begin 
  image.transparent := transparenz; 
  image.picture := nil; 
  with fomara do begin 
    hdc := image.canvas.handle; 
    hdcTarget := hdc; 
    rc := Rect(0, 0, image.canvas.cliprect.right * 1440 div 
      screen.pixelsperinch, 
      image.canvas.cliprect.bottom * 1440 div screen.pixelsperinch); 
    rcPage := rc; 
    chrg.cpMin := 0; 
    chrg.cpMax := richedit.GetTextLen; 
  end; 
  richedit.perform(EM_FORMATRANGE, 1, longint(@fomara)); 
end; 
 
 
// Beispielaufruf 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
  abbilden(Image1, Richedit1, true); 
end;



Zugriffe seit 6.9.2001 auf Delphi-Ecke