- 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

 

Visa text diagonalt Kategori: System
Inlagt: 2005-08-21
Läst: 1335
Inlagt av: Staffan Berg
Beskrivning
För att visa text diagonalt (eller i någon annan vinkel) måste du först skapa en Font. Detta görs med funktionen CreateFontIndirect. Därefeter kan du välja vinkel mellan 0,1 och 45 grader. När fonten är skapad och utskriven behöver du ej längre objektet så denna bör tas bort med DeleteObject.
Kod
procedure Draw_Watermark_on_DC (const aDC : hDC; const x,y : integer); 
var 
 plf      : TLOGFONT; 
 hfnt, hfntPrev : HFONT; 
const 
 txt1 : PChar = 'Created with the demo version of'#0; 
 txt2 : PChar = '   pasDOC'#0; 
 WaterMarkWidth = 300; 
 WaterMarkHeight= 300; 
begin 
 // Specify a font typeface name and weight. 
 ZeroMemory (@plf, sizeof(plf)); 
 lstrcpy(plf.lfFaceName, 'Arial'); 
 plf.lfHeight := 30; 
 plf.lfEscapement := 0; 
 plf.lfOrientation:= 450; 
 plf.lfWeight := FW_NORMAL; 
 plf.lfCharset:= ANSI_CHARSET; 
 plf.lfOutPrecision := OUT_TT_PRECIS; 
 plf.lfQuality := PROOF_QUALITY; 
 hfnt := CreateFontIndirect(plf); 
 
 // Draw the rotated string  
 SetBkMode(aDC, TRANSPARENT); 
 hfntPrev := SelectObject(aDC, hfnt); 
 Windows.TextOut(aDC, x, y + WaterMarkHeight - 25, txt1, strlen(txt1)); 
 Windows.TextOut(aDC, x+plf.lfHeight * 3, y + WaterMarkHeight - 25, txt2, strlen(txt2)); 
 SelectObject(aDC, hfntPrev); 
 DeleteObject(hfnt); 
end; 
 

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