如何在 ASP.NET MVC 中使用另一个 cshtml 文件作为 SelectPDF header?
How to use another cshtml file as SelectPDF header in ASP.NET MVC?
这里有人在 ASP.NET MVC 项目中使用 SelectPDF 吗?我有两个文件,content.cshtml 和 header.cshtml。我想创建一张 header 实际上是 table 的发票,页码显示如下原型:
包含徽标和 table 的 header 模板已在 header.cshtml 中准备就绪。如果没有 header,我可以使用以下代码毫无问题地转换内容:
string html = await ViewToHtmlAsync("~/Views/content.cshtml");
SelectPdf.HtmlToPdf converter = new SelectPdf.HtmlToPdf();
PdfDocument pdf = converter.ConvertHtmlString(html);
*ViewToHtmlAsync 是将整个 content.cshtml 文件转换为字符串的函数。
问题是 header,header 必须使用转换器创建。我尝试按照官方网站 https://selectpdf.com/demo/html-to-pdf-headers-and-footers.aspx 提供的示例进行操作,但我坚持使用以下代码,不能通过添加一些参考来简单地修复它吗?
我的问题是如何使用 selectPDF 创建 header 其模板来自另一个 cshtml 文件?如果是,那如何区分页码呢?
您正在使用 ASP.NET MVC 项目,但您引用的文档页面提供了 ASP.NET 项目的示例。
这是适用于 ASP.NET MVC 的代码示例:
string html = ViewToHtmlAsync ("~/Views/content.cshtml");
SelectPdf.HtmlToPdf converter = new SelectPdf.HtmlToPdf();
PdfDocument pdf = converter.ConvertHtmlString(html);
string headerHtml = ViewToHtmlAsync("~/Views/header.cshtml");
var header = new PdfHtmlSection(headerHtml);
header.AutoFitHeight = HtmlToPdfPageFitMode.AutoFit;
converter.Header.Add(header);
SelectPdf.PdfDocument doc = converter.ConvertHtmlString("YOUR PAGE CONTENT");
SelectPdf.PdfPage page = doc.AddPage();
是的,SelectPDF 为我提供了正确答案。带一个参数的 ConvertHtmlString(string) 会假定它是 url,而不是 html 的字符串内容。改成两个参数ConvertHtmlString(string, string)解决问题。
这里有人在 ASP.NET MVC 项目中使用 SelectPDF 吗?我有两个文件,content.cshtml 和 header.cshtml。我想创建一张 header 实际上是 table 的发票,页码显示如下原型:
包含徽标和 table 的 header 模板已在 header.cshtml 中准备就绪。如果没有 header,我可以使用以下代码毫无问题地转换内容:
string html = await ViewToHtmlAsync("~/Views/content.cshtml");
SelectPdf.HtmlToPdf converter = new SelectPdf.HtmlToPdf();
PdfDocument pdf = converter.ConvertHtmlString(html);
*ViewToHtmlAsync 是将整个 content.cshtml 文件转换为字符串的函数。
问题是 header,header 必须使用转换器创建。我尝试按照官方网站 https://selectpdf.com/demo/html-to-pdf-headers-and-footers.aspx 提供的示例进行操作,但我坚持使用以下代码,不能通过添加一些参考来简单地修复它吗?
我的问题是如何使用 selectPDF 创建 header 其模板来自另一个 cshtml 文件?如果是,那如何区分页码呢?
您正在使用 ASP.NET MVC 项目,但您引用的文档页面提供了 ASP.NET 项目的示例。
这是适用于 ASP.NET MVC 的代码示例:
string html = ViewToHtmlAsync ("~/Views/content.cshtml");
SelectPdf.HtmlToPdf converter = new SelectPdf.HtmlToPdf();
PdfDocument pdf = converter.ConvertHtmlString(html);
string headerHtml = ViewToHtmlAsync("~/Views/header.cshtml");
var header = new PdfHtmlSection(headerHtml);
header.AutoFitHeight = HtmlToPdfPageFitMode.AutoFit;
converter.Header.Add(header);
SelectPdf.PdfDocument doc = converter.ConvertHtmlString("YOUR PAGE CONTENT");
SelectPdf.PdfPage page = doc.AddPage();
是的,SelectPDF 为我提供了正确答案。带一个参数的 ConvertHtmlString(string) 会假定它是 url,而不是 html 的字符串内容。改成两个参数ConvertHtmlString(string, string)解决问题。