Autor Beitrag
kevinkeegan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 27

Win 7 Prof., Win XP Prof
C# (VS 2010 Premium), SQL, PLS/SQL
BeitragVerfasst: Mo 06.07.09 21:03 
Hallo,

ich muss in der Druckklasse meiner Anwendung Zeichen tiefgestellt drucken und weiß nicht wie. Weiterhin brauch ich einen Ansatz, wie ich mehrere floats rechtsbündig untereinander ausgeben kann. Kann mir wer weiter helfen?

MfG
PerryRhodan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 34


C# (VS 2005 + 2008), .NET 2.0 + 3.5 (inkl. WPF, WCF)
BeitragVerfasst: Mo 06.07.09 22:20 
Hallo,

Du zeichnest doch ganz normal auf das PrintDocument? Da setzt Du halt den Offset für die Y-Koordinate bei tiefergestellten Textpassagen etwas anders und fürs rechtsbündige Ausrichten wird Dir MeasureString gute Dienste erweisen.

Grüße
PerryRhodan

_________________
C# im IRC: QuakeNet, Channel: #dotNet.de
kevinkeegan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 27

Win 7 Prof., Win XP Prof
C# (VS 2010 Premium), SQL, PLS/SQL
BeitragVerfasst: Di 07.07.09 08:55 
Moin,

ist mein erstes Ausgabeprogramm, deshalb mache ich wahrscheinlich noch einiges falsch.
Ja ich zeichne mit DrawString etc. direkt auf das PrintDocument. Die Koordinaten für sämtliche Strings und Images werden empirisch ermittelt. Wie machen das "die alten Hasen"? Es gibt also keine Formatierungsmöglichkeiten für Hochstellen/Tiefstellen? Dann kann ich ja wirklich nur mit der Y-Koordinate und der Schriftgröße rumbasteln. :(

Rechts ausrichten mit MeasureString ... Das ist mir noch nicht klar, wie man das realisiert. Muß man da zwangsläufig in dem DrawString als "Ziel" ein Rectangle verwenden? Die Ausrichtung rechts bekomme ich mit einem StringAlignment.Far hin? Wenn jemand ein bisschen Code als Beispiel dazu hätte wäre klasse, Danke!

MfG
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Di 07.07.09 09:09 
user profile iconkevinkeegan hat folgendes geschrieben Zum zitierten Posting springen:
Es gibt also keine Formatierungsmöglichkeiten für Hochstellen/Tiefstellen? Dann kann ich ja wirklich nur mit der Y-Koordinate und der Schriftgröße rumbasteln. :(

Mir ist auch nichts anderes bekannt.

user profile iconkevinkeegan hat folgendes geschrieben Zum zitierten Posting springen:
Rechts ausrichten mit MeasureString ... Das ist mir noch nicht klar, wie man das realisiert.

Du müsstest eigentlich den ganzen zur Verfügung stehenden Platz kennen. Mit MeasureString bekommst du die tatsächliche Länge des Strings; daraus kannst du die (linke) Startposition berechnen.

Alternativ könntest du auch die StringFormat-Klasse benutzen; dort gibt es auch SetTabStops mit einem Beispiel in der SDK-Doku/MSDN.

Gruß Jürgen