Du kannst nicht wissen, welchen Font der Mail-Empfänger für nicht formatierten Text ausgewählt hat (fixe oder variable Breite).
Mit
HTML könntest Du es halbwegs sicher hinbekommen, allerdings weißt Du nicht, ob der Mail-Empfänger erlaubt
HTML-Text anzeigen zu lassen.
Im Prinzip wäre die richtige Lösung, eine PDF-Datei mitzuschicken, wo es dann eindeutig ist.
Wenn Deine "E-Mail-Routine" eine "Mail-To" Lösung ist, dann ist der Grund warum die Leerzeichen fehlen, dass diese in der "Mailto-Sprechweise" nicht erlaubt sind, Du musst Leerzeichen durch das "%20"-Zeichen ersetzen, das Mailprogramm wandelt das dann entsprechend um. Ähnliches gilt für andere Zeichen. Und wenn Du Tabulatoren verwendest, müsstest Du das entsprechend ersetzen (wird aber evtl. nicht von allen Mail-Clients unterstützt).