Einzelnen Beitrag anzeigen

wschrabi

Registriert seit: 16. Jan 2005
448 Beiträge
 
#1

TextOUt vs Unicode Text OUT with XE 6

  Alt 2. Aug 2015, 21:30
Hallo,
ich komm einfach nicht weitere.
Die Version mit TEXTOUT klappt aber die Unicode Zeichen werden nicht dargestellt bzw werden wenn gegeben als ANSI umgemodelt.
Ich möchte aber UNICODE Zeichen machen. Ich sehe mit DrawTextW nichts am Printer Canvas (gedruckt in ein PDF.)
Kann mir jemand weiterhelfen?

Delphi-Quellcode:
{---------------------------------------------------------------------------}
  procedure TForm3.PrintNamezoomedout(xzoom,yzoom:INTEGER; x1,y1:word;Col:TColor; s:string);
  var
  //S: WideString;
   r: TRect;
  begin
  r := Rect((x1*28-28)*xzoom,-1*(y1*50)*yzoom,((x1+100)*28-28)*xzoom,-1*((y1+80)*50)*yzoom);
  r:= ClientRect;
  //S := 'This is the integral sign: '#$222b;
  
    Printer.Canvas.Font.Name := 'Arial';
    Printer.Canvas.Font.Style := [];
    Printer.Canvas.Font.Pitch := fpFixed;
    Printer.Canvas.Font.Height := 50;
    Printer.Canvas.Font.Color:=Col;
    //DrawTextW(Printer.Canvas.Handle, PWideChar(S), length(S), r, DT_SINGLELINE or DT_CENTER or DT_VCENTER or DT_END_ELLIPSIS);
    Printer.Canvas.TextOUt((x1*28-28)*xzoom,-1*(y1*50)*yzoom,s);
  end;

 {----------------------------------------------------------------------------}
  Mit Zitat antworten Zitat