/// <summary> /// Returned object must be disposed /// MultiplexingConverter should be used for multithreading /// but and application doesn't exit after its using /// </summary> /// <returns></returns> private WkHtmlToPdfConverter GetConverter() { var conv = new WkHtmlToPdfConverter(); conv.GlobalSettings.Dpi = Dpi; conv.GlobalSettings.Margin.Top = MarginTop?.ToString(); conv.GlobalSettings.Margin.Bottom = MarginBottom?.ToString(); conv.GlobalSettings.Margin.Left = MarginLeft?.ToString(); conv.GlobalSettings.Margin.Left = MarginLeft?.ToString(); conv.GlobalSettings.Orientation = Orientation; conv.GlobalSettings.Size.PageSize = PageSize; conv.ObjectSettings.Load.ZoomFactor = Zoom; conv.ObjectSettings.Header.Spacing = HeaderSpacing; conv.ObjectSettings.Header.HtmlUrl = HeaderHtmlUrl; conv.ObjectSettings.Page = HtmlUrl; conv.ObjectSettings.Footer.Spacing = FooterSpacing; conv.ObjectSettings.Footer.HtmlUrl = FooterHtmlUrl; conv.ObjectSettings.Web.EnableIntelligentShrinking = false; //conv.Begin += (s, e) => _Log.DebugFormat("Conversion begin, phase count: {0}", e.Value); //conv.Error += (s, e) => _Log.Error(e.Value); //conv.Warning += (s, e) => _Log.Warn(e.Value); //conv.PhaseChanged += (s, e) => _Log.InfoFormat("PhaseChanged: {0} - {1}", e.Value, e.Value2); //conv.ProgressChanged += (s, e) => _Log.InfoFormat("ProgressChanged: {0} - {1}", e.Value, e.Value2); //conv.Finished += (s, e) => _Log.InfoFormat("Finished: {0}", e.Value ? "success" : "failed!"); return(conv); }
private void Init() { if (_instanse == null) { /// Copies wkhtmltox0.dll to the assembly directory WkHtmlToXLibrariesManager.Register(new Win32NativeBundle()); _instanse = new WkHtmlToPdfConverter(); } }
public void TestMethod() { IHtmlToPdfConverter converter = new WkHtmlToPdfConverter(); var content = converter.Convert("http://www.sina.com/"); Assert.IsNotNull(content); }