AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein TextOUt vs Unicode Text OUT with XE 6

TextOUt vs Unicode Text OUT with XE 6

Ein Thema von wschrabi · begonnen am 2. Aug 2015 · letzter Beitrag vom 3. Aug 2015
Antwort Antwort
wschrabi

Registriert seit: 16. Jan 2005
367 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
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.658 Beiträge
 
Delphi 7 Personal
 
#2

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 2. Aug 2015, 23:10
Könnte es sein, daß sich fpfixed und Arial nicht vertragen?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
wschrabi

Registriert seit: 16. Jan 2005
367 Beiträge
 
#3

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 3. Aug 2015, 07:47
Glaub ich nicht, bei TextOUT klappt es ja. werde mal ein Rechteck bei den r zeichnen, vielleicht ist das zu groß.
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#4

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 3. Aug 2015, 07:58
Unsinn ist es auf alle Fälle. Arial ist keine fixed pitch Schrift. Vielleicht hilft es, wenn du das änderst.
Weil die eine Routine irgendwie mit Unsinn klarkommt, muss das bei der anderen nicht notwendigerweise der Fall sein.

Zum Testen würde ich mir den Druckercanvas in ein Picturecanvas kopieren und anschauen. Vielleicht spinnt der PDF Treiber (nicht sehr wahrscheinlich, aber möglich).

Geändert von idefix2 ( 3. Aug 2015 um 08:06 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
8.820 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 3. Aug 2015, 08:34
Vielleicht spinnt der PDF Treiber (nicht sehr wahrscheinlich, aber möglich).
Wäre aber durchaus denkbar. Die Ausgabe von Arial fixed in einem TLabel klappt problemlos. Wenn jetzt die Windows-Logik auch für den PDF-Treiber gelten würde, sollte man keine Probleme erwarten. Wenn aber der Treiber sagt "Hey, Text kann ich selber - gib einfach her", dann kann es doch sein, daß der Treiber mangels eines Fixed Arial Font (den gibt es übrigens kostenpflichtig bei Monotype) einfach einen anderen Fixed Font nimmt, der aber mit dem Unicode nicht klar kommt.


@wschrabi: Welchen PDF-Treiber verwendest du denn hier? Vielleicht hat den ja der Eine oder Andere hier bei der Hand und kann das reproduzieren.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
16.914 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 3. Aug 2015, 09:14
Ich vermute mal das die PDF-Implementierung Mist baut
Wir haben hier auch eine PDF-Komponente (für Java) und die macht bei (gemischten) Arabisch-Deutschen Texten auch mist was die Laufrichtung und die Reihenfolge betrifft.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
wschrabi

Registriert seit: 16. Jan 2005
367 Beiträge
 
#7

AW: TextOUt vs Unicode Text OUT with XE 6

  Alt 3. Aug 2015, 09:48
Ich habs schon. Das RECT war viel zu gross und da er in die Mitte druckt habe ich es außerhalb des Blattes.
Wenn ich das r entsprechend kleiner mache, paßt es.
Besten Dank für die vielen Tips.
Schöne Grüße
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf