Hi Leute,
erstmal danke an die sehr guten Beiträge hier, die mir bis hier her viel geholfen haben.
Nun stehe ich vor einem Problem, wo ich momentan net so wirklich weiter weiß.
Ausgangspunkt: c# Visual Studio 2010 Pro
ich erstelle mit e.Graphics alles zum drucken. Funktioniert auch soweit alles super.
Nun möchte ich im Programm (ohne zutun eines Anwenders), diese Seite als PDF ablegen (Netzlaufwerk), damit ich sie sofort als Mail (using System.Net.Mail;) weiterschicken kann.
.net kann ja keine PDF's erstellen.
Ist sowas mit PDFSharp (oder ähnliches) zu realsieren?
(Mit PDFSharp kann man den Ausdruck auch nachbauen, was ja doppelte arbeit wäre)
Was ich vermeiden möchte, ist sowas mit Acrobat (Versionsprobleme) oder pdfCreator zu machen.
Ich stelle es mir so vor.
new PDF .....
nehme Daten aus
private void print_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Graphics gre = e.Graphics;
............
............
}
Speichere es im Pfad XXX ab.
Danach kommt die Mail-Geschichte, was ja auch soweit klappt
Solltet Ihr noch weitere Infos brauchen, einfach Fragen.
Einen Dank im Voraus
Wassermann
Hallo Wassermann,
herzlich willkommen hier auf myCSharp.de!
.net kann ja keine PDF's erstellen.
Nein, nicht von "Haus" aus.
Mit XPS geht das - wird dir aber wohl eher auch nicht weiterhelfen.
Was ich vermeiden möchte, ist sowas mit Acrobat (Versionsprobleme) oder pdfCreator zu machen.
Ein virtueller Drucker wäre aber IMHO noch das einfachste.
Evtl. wäre eine "professionelle" Reportingsuite, die den PDF-Export schon von sich aus mitbringt (sollte es ein paar kommerzielle geben), eine Möglichkeit.
Mit PDFSharp kann man den Ausdruck auch nachbauen, was ja doppelte arbeit wäre
Wieso doppelte Arbeit?
Du könntest ja die PDFSharp Ausgabe auch auf dem Bildschirm anzeigen.
Hallo,
Reportingsuite, die den PDF-Export schon von sich aus mitbringt
zB der http://www.gotreportviewer.com/ kann PDFs rendern und mit dem Control auch auf dem Bildschirm angezeigt werden. Also keine doppelte Arbeit 😉
Was mir in letzter Zeit auch ganz gut gefällt ist der Weg XML -> XSLT -> XSL-Fo -> PDF. Für .net gibts dazu http://fonet.codeplex.com/. Das mag sich kompliziert anhören ist es aber garnicht.
mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.
"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
Wenn Du schon bestehende Routinen auf basis von Graphics hast, kann ich Dir auch PdfSharp empfehlen.
Diese PDF Bibliothek ist unabhängig vom Acrobat und zeichnet in PDFs mit einer Graphics ähnlichen API, nennt sich dann nur XGraphics, XPoint, Xfont ....
Hallo,
danke für die Antworten.
Ich bastle es grad mit PDFSharp nach.
Meine Idee wäre halt gewesen, das z.B PDFSharp die Daten vom e.Graphics mitbenutzen kann, so das der Ausdruck und das PDF (wo nur für den Mail-Versand ist) gleich sind.
Ist halt nun ein bissal gebastle, das gleich aussieht, aber ja nicht wirklich ein Aufwand.
MfG
Meine Idee wäre halt gewesen, das z.B PDFSharp die Daten vom e.Graphics mitbenutzen kann, so das der Ausdruck und das PDF (wo nur für den Mail-Versand ist) gleich sind.
Wie gesagt: Gehe doch einfach den "umgekehrten" Weg und drucke dann via PDFSharp - laut Featurebeschreibung unterstützt das auch GDI+ Ausgabe.