2016-08-08 13 views
0

Ich habe eine .net-Anwendung in C#, wo ich versuche, mit einem PDF-Dokument auf der linken Seite und einer Textbeschreibung auf der rechten Seite zu drucken. Bisher war es mir gelungen, die 2 Ausgaben in eine PDF-Datei zu kombinieren, aber ich bin ratlos, wie man es programmatisch macht, so dass wenn ich gehe zum Drucken, dann in der Seitengröße "Mehrere" und Seiten einstellen pro Blatt zu 2.C# Drucken von PDF in mehreren Ausgabeeinstellungen?

Meine Vermutung ist, dass es eine Prozessdruckfunktion irgendwo ist, aber scheint, keine Beispiele noch klare Dokumentation zu finden, um dies zu tun. Bitte beraten, danke.

enter image description here

+0

versuchen Sie, das pdf auf einer Seite zu haben und der Text kommentiert auf einem anderen? – tCoe

+0

Nein, dasselbe Blatt Papier. Auf der PDF selbst ist der Text tatsächlich eine separate Seite, die mit dem Dokument zusammengeführt wurde, um den gleichen Druckauftrag zu teilen. – jfalberg

+0

Welches Berichts-Tool verwenden Sie? – tCoe

Antwort

1

, wenn Sie aus dem Backend-Seiten pro Blatt festlegen möchten, anstatt Druck/Druckdialog Sie Printticket-Klasse [System.Printing] verwenden. Diese Klassen haben viele Eigenschaften und Ereignisse, die es uns ermöglichen, mit C# -Code viele druck- und druckbezogene Aufgaben zu erledigen. Es gibt auch viele Klassen im Zusammenhang mit dem Drucken in diesem Namespace [möglicherweise wissen Sie über die XPS in Windows, wenn Sie drucken, sehen Sie möglicherweise die Option zum Drucken xps gehört zu Druckschema-Klasse]

können Sie mehr über lesen es von https://msdn.microsoft.com/en-us/library/system.printing.printticket.aspx

+0

Hmmm, ich konnte anscheinend nicht die PrintTicket-Klasse in meinen System.Print- oder meinen System.Drawing.Print-Referenzen finden, nicht sicher, was ich hier falsch mache. Ich benutze C# in Visual Studio 2013, die unterstützt. Net Framework 4.5 – jfalberg

+0

Es stellte sich heraus, ich brauche Verweis auf ReachFramework.dll hinzufügen Der Teil, den ich versuche zu bestimmen, ist, wie dies mit meinem Dokument zu binden, da sie sind referenziert aus separaten Klassen: PrintTicket-Ticket = new PrintTicket(); ticket.PagesPerSheet = 2; – jfalberg

+0

Lieber ich habe Namespace geschrieben. Innerhalb des "System.Printing" müssen Sie eine Referenz zu Ihrem Projekt hinzufügen. –