Generieren von PDF-Dokumenten aus einer HTML-Seite verwenden ASP.NET -C#
Ich verwendet iTextSharp.dll zum erstellen von pdf. aber das funktioniert nur für text -, HTML-Inhalte. wenn ich Bilder in meine Seite Durchführungen Ausnahme, dass die Bilder nicht gefunden...
meine Design-Datei
<asp:Panel ID="pdfPannel" runat="server">
Sample Text
<img src="../Images/image1.png"/>
</asp:Panel>
<asp:Button ID="btnSave" runat="server" Text="Save As PDF" onclick="btnSave_Click" />
meine Methode:
protected void btnSave_Click(object sender, EventArgs e)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=print.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
pdfPannel.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
}
wenn ich auf das speichern-button, ich bin immer Fehler
Nicht finden konnte, ein Teil des Weges " C:\Program Files\Common
Dateien\Microsoft Shared\DevServer\Images\image1.png'.
Bitte sagen Sie mir, gibt es eine Alternative Lösung zum erstellen von pdf.
Vielen Dank im Voraus..
Siehe: stackoverflow.com/a/16061848/231316
Die Verwendung der Vollständigen Pfad Für die Bilder, die dann Seine Arbeit.
Wenn ich volle Pfad auch seine nicht Funktioniert... Es Bild-Pfad als localhost:58095/testProject/D:/testProject/Images/image1.png und das Bild, nicht die Anzeige in der Seite.. und es erzeugt pdf für text-Inhalt.
Wissen Sie, wie man diese arbeiten, die zum Rendern der Seite als pdf und gleich Aussehen, als wäre es auf der web-Seite selbst?
Die Verwendung der Vollständigen Pfad Für die Bilder, die dann Seine Arbeit.
Wenn ich volle Pfad auch seine nicht Funktioniert... Es Bild-Pfad als localhost:58095/testProject/D:/testProject/Images/image1.png und das Bild, nicht die Anzeige in der Seite.. und es erzeugt pdf für text-Inhalt.
Wissen Sie, wie man diese arbeiten, die zum Rendern der Seite als pdf und gleich Aussehen, als wäre es auf der web-Seite selbst?
InformationsquelleAutor Gopalakrishnan | 2013-08-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dein code sieht gut aus. Problem scheint mit dem Bild Weg. Versuchen Sie, diese zu vollständig qualifizierten Pfad Bilder und es wird für Sie arbeiten.
Auch wenn Sie so manipulieren, dass
HTML
von der server-Seite code. Dann werde ich vorschlagen, Sie auf die Karte Bild-Pfade mitServer.MapPath()
. und es funktioniert gut.Das hat für Sie...??
Es funktioniert Nicht wenn ich server.mapPath() es dauerte die Bild-url wie "localhost:58095/testProject/D:/testProject/Images/image1.png; und es zeigt nicht das Bild.
Naja..Problem ist mit dem Weg selbst...ich hatte das gleiche Problem...ich habe gerade implementiert vollständig qualifizierten Pfad und es nur für mich gearbeitet. Überprüfen Sie auch, es ist HTML, wie gut. Wenn die HTML-validieren würde..code analysieren sowie...
für mich ist es nicht funktioniert.. egal was ich ihm gab Durchführungen Ausnahme nur... Können Sie bitte geben Sie den code.. oder mail an mich@ [email protected]
InformationsquelleAutor Mayank Pathak
Verwenden
Bild Weg. Hoffe es wird Euch helfen.
localhost:58095
ist Ihre lokale Maschine-Adresse.InformationsquelleAutor user4600813