【问题标题】:HTML to Word or PDF with GEMBOX使用 GEMBOX 将 HTML 转换为 Word 或 PDF
【发布时间】:2021-08-26 20:36:06
【问题描述】:

我正在使用 Gembox.Documents 将 HTML 文件插入 Word 或 PDF 文档。

不幸的是,在生成的 Word(或 pdf)中,表格中行(单元格)内容的高度太高,与 HTML 文件中的原始高度不对应,我无法使用CSS 或 HTML 的帮助。

您能否提出解决问题的方法?

string fileName="zzzz";

var destinationDocument = new DocumentModel();
var section = new Section(destinationDocument);
destinationDocument.Sections.Add(section);            

var srcDocument = DocumentModel.Load(TempPath + fileName + ".html");
var pageSetup = srcDocument.Sections[0].PageSetup;
var destpagesPageSetup = destinationDocument.Sections[0].PageSetup;
destpagesPageSetup.Orientation = Orientation.Landscape;
destpagesPageSetup.PageWidth = 1000;
destpagesPageSetup.PageHeight = 1000;
destpagesPageSetup.RightToLeft = true;
destpagesPageSetup.PageMargins.Left = 20;
destpagesPageSetup.PageMargins.Right = 0;
destpagesPageSetup.PageMargins.Bottom = 0;
destpagesPageSetup.PageMargins.Top = 0;
destpagesPageSetup.PageMargins.Gutter = 0;
destpagesPageSetup.PageMargins.Footer = 0;
                    
var mapping = new ImportMapping(srcDocument, destinationDocument, false);
var blocks = srcDocument.Sections[0].Blocks;
foreach (Block b in blocks)
{
    //b.ParentCollection.TableFormat.DefaultCellSpacing = 1;
    Block b1 = destinationDocument.Import(b, true, mapping);
    section.Blocks.Add(b1);
}

var pageSetup1 = section.PageSetup;
destinationDocument.Save(TempPath + fileName + ".pdf");

谢谢

【问题讨论】:

    标签: c# html css gembox-document


    【解决方案1】:

    出现此问题的原因是 HTML 内容中出现了单元格边距。

    在调查该 HTML 后,问题已得到解决,该修复程序在当前最新的错误修复版本中可用:
    https://www.gemboxsoftware.com/document/downloads/bugfixes.html

    或者在当前最新的 NuGet 包中:
    https://www.nuget.org/packages/GemBox.Document/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-21
      • 2013-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-08
      相关资源
      最近更新 更多