Advertisement
andruhovski

Render to PNG

Nov 18th, 2018
306
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.58 KB | None | 0 0
  1. using System;
  2. using System.Threading;
  3. using Aspose.Html;
  4. using Aspose.Html.Rendering;
  5. using Aspose.Html.Rendering.Image;
  6.  
  7. namespace Fundamentals
  8. {
  9.     internal class Program
  10.     {
  11.         private static readonly ManualResetEvent IsFinished = new ManualResetEvent(false);
  12.  
  13.         private static void Main(string[] args)
  14.         {
  15.             var htmlDocument = new HTMLDocument();
  16.             htmlDocument.OnLoad += MakeImage;
  17.             // Workaround: htmlDocument.OnReadyStateChange += MakeImage;
  18.             htmlDocument.Navigate("https://lipsum.com/feed/html");
  19.             IsFinished.WaitOne();
  20.             htmlDocument.Dispose();
  21.         }
  22.  
  23.         private static void MakeImage(object sender, Aspose.Html.Dom.Events.Event e)
  24.         {
  25.             Console.WriteLine("<MakeImage>");
  26.             if (sender is HTMLDocument doc)
  27.                 if (doc.ReadyState.Equals("complete"))
  28.                 {
  29.                     Console.WriteLine(doc.ReadyState);
  30.                     var imgOptions = new ImageRenderingOptions();
  31.                     using (var imgDevice = new ImageDevice(imgOptions, "Aspose_HTML.png"))
  32.                     using (var renderer = new HtmlRenderer())
  33.                     {
  34.                         // Render the output using HtmlRenderer
  35.                         renderer.Render(imgDevice, doc);
  36.                     }
  37.                     IsFinished.Set();
  38.                 }
  39.                 else
  40.                 {
  41.                     Console.WriteLine(doc.ReadyState);
  42.                 }
  43.             Console.WriteLine("</MakeImage>");
  44.         }
  45.     }
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement