2

我正在构建html视图stringbuilderDinkToPDF用于将这个 HTML 转换为 pdf。我已经能够使用以下方法添加页眉和页脚(通过创建静态HTML页面:

var objectSettings = new ObjectSettings
        {
            PagesCount = true,
            HtmlContent = await _template.Build(data, hostUrl),
            //HeaderSettings = { HtmUrl = hostUrl + "/views/v1/getview?reportName=AcademicTranscript&viewName=test.html&themeName=SchoolTheme_SchoolId", 
            HeaderSettings = { HtmUrl = hostUrl + _swaggerConfig.BasePath + "/views/v1/getview?reportName=AcademicTranscript&viewName=portraitheader.html",
                Line = true, Right = "[page]/[sitepages]", Spacing = 5 },
            FooterSettings = { HtmUrl = hostUrl + _swaggerConfig.BasePath + "/views/v1/getview?reportName=AcademicTranscript&viewName=portraitfooter.html",
                Line = true },
        };

这很好用,但我需要添加一个自定义html视图作为标题的一部分,其中包含详细信息,例如姓名、姓氏、地址等。

有没有办法将自定义构建的页面(意味着 Html 标记等带有来自数据库的信息)添加到标题?

我希望我的问题是有道理的。

谢谢你的帮助。

4

1 回答 1

1

目前似乎有两种方法可以在DinkToPDFHeaderSettings中设置文档标题内容:

  1. 用纯文本填充Left, Center,属性Right
  2. HtmUrl在属性中传递 HTML 格式的头文件的路径

因此,您可以从数据库中检索所需的数据,使用 HTML 渲染器填充 HTML 头文件将头文件的路径传递给HeaderSettings.HtmUrl属性,使用 DinkToPDF 生成 PDF 文档,然后删除头文件。

可以在此处找到通过模板生成 HTML 文件的示例

于 2021-03-25T16:50:26.600 回答