Vertikal Drucken
-
Hallo Forum,
ich möchte gerne einen String auf meiner Druckseite vertikal Drucken.
Habe bisher zwei Wege gefunden:
In beiden Fällen nutze ich das Graphics Objekt aus dem PrintPageEventHandler,
hier g genannt.
B steht für den Brush.StringFormat^ fr = gcnew StringFormat(); fr->FormatFlags = StringFormatFlags::DirectionVertical; g->DrawString("Datum", fontKlein, B, xPos, yPos, fr);
Funktioniert, leider wird der String um 90° nach rechts gedreht. Ich benötige den String um 90° nach links gedreht.
Möglichkeit 2:
g->RotateTransform(float(-90)); g->DrawString("Datum", fontKlein, B, xPos, yPos); g->ResetTransform();
Hier erfolgt die Ausgabe nur bis ca. 70° Drehung. Bei 90° erscheint der String gar nicht mehr auf dem Blatt.
Was mache ich verkehrt?
Gibt es eine Möglichkeit den String aus Möglichkeit 1 zu spiegeln?Vielen Dank für eure Hilfe...
-
Bei 90° erscheint der String gar nicht mehr auf dem Blatt.
Kann es sein dass der string durch die Drehung außerhalb des Blatte liegt ? Schon mal mit einer zusätzlichen Verschiebung probiert ?
Gibt es eine Möglichkeit den String aus Möglichkeit 1 zu spiegeln?
Zum Spiegeln kannst du ScaleTransform nutzen, eine Scalierung von -1 auf der X-Achse bedeutet eine Spiegelung an der Y-Achse da alle X-Koordinaten umgekehrt werden.
Reihenfolge von Skalierung, Translation und Rotation solltest du natürlich beachten.