RenderPage0.cs
 // // This code is part of Document Solutions for PDF demos. // Copyright (c) MESCIUS inc. All rights reserved. // using System; using System.IO; using System.Drawing; using GrapeCity.Documents.Pdf; using GrapeCity.Documents.Text; using GrapeCity.Documents.Html; namespace DsPdfWeb.Demos { // This sample shows the simplest way to render a web page // specified by a URL to a PDF (here we render the Google home page). // // In this sample we use GcHtmlBrowser to create an instance of HtmlPage // that loads the specified URI, and then call the HtmlPage.SaveAsPdf() // method to render the page to PDF. // // A different approach that allows you to easily add HTML content // to a PDF file along with other content is via the extension // methods GcPdfGraphics.MeasureHtml()/GcPdfGraphics.DrawHtml() // as demonstrated by HelloWorldHtml and other samples. // Note that those methods require an instance of GcHtmlBrowser // to be passed as parameter. // // Please see notes in comments at the top of HelloWorldHtml // sample code for details on adding DsHtml to your projects. public class RenderPage0 { public void CreatePDF(Stream stream) { // Get a temporary file where the web page will be rendered: var tmp = Path.GetTempFileName(); // The Uri of the web page to render: var uri = new Uri("http://www.google.com"); // Create an instance of GcHtmlBrowser that is used to render HTML: using var browser = Common.Util.NewHtmlBrowser(); // Create an HtmlPage instance rendering the source Uri: using var htmlPage = browser.NewPage(uri); // Render the source Web page to the temporary file: htmlPage.SaveAsPdf(tmp); // Copy the created PDF from the temp file to target stream: using (var ts = File.OpenRead(tmp)) ts.CopyTo(stream); // Clean up: File.Delete(tmp); // Done. } } }