Diese MSDN sollte Ihnen helfen. Der Zeilenabstand ist ein Ergebnis der von Ihnen verwendeten Schriftart. Möglicherweise müssen Sie Ihre DrawString-Befehle in mehrere Aufrufe aufteilen, wenn Sie benutzerdefinierte Zeilenabstände benötigen.
Diese Microsoft Foren-Posting kann hilfreich sein:
Dies zeigt, wie mit MeasureString bestimmt werden kann, wie viel von Ihrem Text auf jede Zeile passt, und dann dazu verwendet wird, den Inhalt des gesamten Rechtecks schrittweise Zeile für Zeile darzustellen. Leider glaube ich nicht, dass es eine eingebaute Zeilenabstandseigenschaft gibt, also müssen Sie sich für den manuellen Ansatz entscheiden. Der Autor des Beitrags verwendet die Schrifthöhe * 1.5.
Es lohnt sich auch, StringFormatFlags zu untersuchen - Sie müssen sicherstellen, dass sowohl DrawString als auch MeasureString das gleiche StringFormat verwenden, damit das Rendering und die Messung konsistent sind: