Το πρόβλημα είναι αυτό που αναφέρεις, δηλαδή να γίνεται ακριβώς η ίδια εκτύπωση παντού.
Ο ισχυρισμός ότι φταίνει οι οδηγοί των windows για τα προβλήματα των εκτυπώσεων είναι άτοπος - αν ήταν έτσι τόσοι κατασκευαστές βγάζουν ελατωματικούς οδηγούς δηλαδή; Η εμπιστευόμαστε αυτούς τους οδηγούς για φωτορεαλιστικές εκτυπώσεις, παρόμοιες με φωτογραφίες, και δεν μπορούμε να το κάνουμε για απλές εκτυπώσεις; Δεν είναι κουτό;
Καλό είναι να κάνεις την δουλειά σου μέσα από κάποιο έτοιμο framework - ολοκληρωμένο περιβάλον, όπως το Crystal Reports που ανέφερες, για να κερδίσεις χρόνο σε σχεδιασμό με ακρίβια, και να γλυτώσεις τον χρόνο "να εφεύρεις τον τροχό στην εποχή των διαστημολποίων"!
Να εκτυπώσεις χύμα από DOS στα XP είναι λίγο ρίσκο πλέον, γιατί θα πρέπει να έχεις μια εφαρμογή τύπου Clipper, native 16bit, που να αναζητά να γράψει raw στην παράλληλη θύρα του υπολογιστή. Εξασφαλίζεις 15" καθηστέρηση σε κάθε εκτύπωση, γιατί τόσο είναι ο χρόνος που θα πάρει στον virtual οδηγό που είναι συνδεμένος στην θύρα να μαζεύψει τα raw data για να τα στείλει στον εκτυπωτή των windows και να τα κάνει spool.
Αν θελήσεις να εκτυπώσεις μέσω ενός δικού σου framework, που να χρησιμοποιεί το text mode των dot matrix εκτυπωτών, δεν θα σου δώσει την ευκολία της εύκολης τοποθέτησης του κειμένου επάνω στην φόρμα. Το κείμενο θα είναι πάντα περίπου στην θέση του.
Είναι καλύτερα να σχεδιάσεις μερικές φόρμες πάνω σε αυτό το "έτοιμο framework", όποιο και να είναι, να κάνεις δοκιμές πως θα πετύχεις το καλύτερο δυνατό αποτέλεσμα, και μετά να απολαμβάνεις τα οφέλη του, τα μερικά σύνολα, τα γενικά σύνολα, τα groupings, που όλοι όσοι θέλουν αναφορές και έντυπα τους αρέσουν! 
George J.