コード例 #1
0
        /// <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);
        }
コード例 #2
0
 private void Init()
 {
     if (_instanse == null)
     {
         /// Copies wkhtmltox0.dll to the assembly directory
         WkHtmlToXLibrariesManager.Register(new Win32NativeBundle());
         _instanse = new WkHtmlToPdfConverter();
     }
 }
コード例 #3
0
ファイル: UnitTest.cs プロジェクト: w-g/sediment
 public void TestMethod()
 {
     IHtmlToPdfConverter converter = new WkHtmlToPdfConverter();
     var content = converter.Convert("http://www.sina.com/");
     Assert.IsNotNull(content);
 }