2009-08-14 13 views
1

Ich schreibe eine Anwendung, die eine Menge von Batch-Druck macht, aber jeder Druck mehr Sekunden in Anspruch nimmt. Ich habe es zu dem Getter der Immobilie PageSettings.PrintableArea in System.Drawing.Printing aufgespürt - jeder Aufruf das dauert über 1 Sekunde zu beenden!Warum ist PageSettings.PrintableArea so langsam?

Kann jemand Licht auf warum dies ist und wie es verbessert werden kann?

Antwort

1

Wenn Sie sich den Code für PrintableArea (in Reflector) ansehen, werden viele native Aufrufe an den Druckertreiber ausgegeben.

Aus meiner Erfahrung, wenn das Drucken von .Net langsam ist, hat es mit dem Druckertreiber zu tun. Stellen Sie einen Dummy-Drucker mit einem generischen Druckertreiber, oder mit dem HP4-Treiber und sehen, ob die schneller ist.

Wenn ja, versuchen Sie eine andere Version des Druckertreibers Sie heute nutzen.