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
|
|
|