Die Anzeige einer web-Seite als pdf-Datei mit klicken auf eine Schaltfläche

Habe ich eine neue Anforderung, eine Schaltfläche in meiner web-Seite und bei Klick zeigt es die web-Seite als PDF-Datei. Auf der recherche habe ich festgestellt, dass iTextSharp ist für derartige Zwecke verwendet.
Aber ich habe viele Telerik - und ASP-controls in meine web-Seite auch. Kann ich das auch in der PDF-Datei mit der iTextSharp?

Wenn ja, dann kann jemand bitte geben Sie mir einen basic-link, um zu starten mit iTextSharp als ich nicht stieß auf dieses tool noch.

Laut der Antwort von @ahaliav habe ich versucht mit dem folgenden code. Allerdings bin ich mir nicht immer die Steuerelemente auf dem pdf-Dokument.

    protected void btnExport_Click(object sender, EventArgs e)
    {
        Response.ContentType = "application/pdf";
        Response.AddHeader("content-disposition", "attachment;filename=TestPage.pdf");
        Response.Cache.SetCacheability(HttpCacheability.NoCache);

        MemoryStream msOutput = new MemoryStream();
        TextReader reader = new StringReader(HtmlContent);

        //step 1: creation of a document-object
        Document document = new Document(PageSize.A4, 30, 30, 30, 30);
        HTMLWorker worker = new HTMLWorker(document);
        //step 2:
        //we create a writer that listens to the document
        //and directs a XML-stream to a file
        PdfWriter writer = PdfWriter.GetInstance(document, Response.OutputStream);

        //step 3: we create a worker parse the document

        //step 4: we open document and start the worker on the document
        document.Open();
        worker.StartDocument();

        //step 5: parse the html into the document
        worker.Parse(reader);

        //step 6: close the document and the worker
        worker.EndDocument();
        worker.Close();
        document.Close();
        //Response.Write(document);
        //Response.End();

    }
    protected override void Render(HtmlTextWriter writer)
    {
        //setup a TextWriter to capture the markup
        TextWriter tw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(tw);

        //render the markup into our surrogate TextWriter
        base.Render(htw);

        //get the captured markup as a string
        string pageSource = tw.ToString();

        //render the markup into the output stream verbatim
        writer.Write(pageSource);

        //remove the viewstate field from the captured markup
        HtmlContent = Regex.Replace(pageSource,
            "<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\".*?\" />",
            "", RegexOptions.IgnoreCase);

        //the page source, without the viewstate field, is in viewStateRemoved
        //do what you like with it

    }

Bitte helfen .
Ich habe andere option,dass ist das Bild von der vollständigen web-Seite, wenn ich auf eine Schaltfläche klicken.Kann jemand mich leiten, um alle mögliche Richtungen für diese zwei Fragen bitte.

Ich endlich meine geänderte code:

        Response.ContentType = "application/msword";
        Response.AddHeader("content-disposition", "attachment;filename=TestPage.doc");
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        MemoryStream msOutput = new MemoryStream();

Damit bin ich in der Lage, die msword-Dokument mit allen meinen Kontrollen ,aber ich bin auch immer einige unerwünschte Texte,wie kann ich das entfernen, dass,wenn jemand hatte das gleiche problem?

  • Ich bin mit den wkhtmltopdf in einem meiner Projekte zum generieren einer PDF-Datei basierend auf einer Webseite.
  • kann ich die telerik controls auch in diesem pdf
  • Nicht sicher, aber meine Vermutung wäre Nein.
  • Ich habe noch geändert, meine Frage,bitte helfen Sie mit, dass
InformationsquelleAutor Vipin Nair | 2012-05-03
Schreibe einen Kommentar