- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Omvandla TRichEdit-text till en bild Kategori: Grafik
Inlagt: 2006-10-28
Läst: 1396
Inlagt av: Staffan Berg
Beskrivning
Spara TRichEdit-text som en bildfil med detta tips. Kan vara bra om man vill visa inskriven text som en bild.
Kod
implementation 
 
uses 
 RichEdit; 
 
procedure RichEditToCanvas(RichEdit: TRichEdit;  
 Canvas: TCanvas; PixelsPerInch: integer); 
var 
 ImageCanvas: TCanvas; 
 fmt    : TFormatRange; 
begin // RichEditToCanvas  
 ImageCanvas := Canvas;  
 with fmt do  
 begin  
  HDC := ImageCanvas.Handle;  
  hdcTarget := HDC;  
  // rect needs to be specified in twips (1/1440 inch) as unit  
  rc := Rect(0, 0,  
        ImageCanvas.ClipRect.Right * 1440 div PixelsPerInch,  
        ImageCanvas.ClipRect.Bottom * 1440 div PixelsPerInch);  
  rcPage := rc;  
  chrg.cpMin := 0;  
  chrg.cpMax := RichEdit.GetTextLen 
 end; //with fmt  
 SetBkMode(ImageCanvas.Handle, TRANSPARENT);  
 RichEdit.Perform(EM_FORMATRANGE, 1, integer(@fmt));  
 // next call frees some cached data  
 RichEdit.Perform(EM_FORMATRANGE, 0, 0) 
end; //RichEditToCanvas  
 
 
procedure TForm1.Button1Click(Sender: TObject);  
begin //TForm1.Button1Click  
 RichEditToCanvas(RichEdit1, Image1.Canvas, Self.PixelsPerInch);  
 Image1.Refresh 
end; //TForm1.Button1Click  

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -