asp.net 核心页脚中的页码(局部视图)
Page number in asp.net core footer (partial view)
我在 Asp.Net 核心 MVC 项目中使用 jsreport。除页码外,一切正常。
我正在为页脚使用部分视图。
这是局部视图:
<table style="font-size: 10px; padding-bottom: 5px; padding-top: 0in; padding-left: 0.25in; padding-right: 0.25in;">
<tbody>
<tr>
<td style="width: 1.5in; text-align: left;"><b>@($"{DateTime.Now}")</b></td>
<td style="width: 8.2in; text-align: center;">Brand Name</td>
<td style="width: 1.5in; text-align: right;">Page <span class="pageNumber"></span> of <span class="totalPages"></span></td>
</tr>
</tbody>
</table>
不幸的是,页码部分根本不起作用。我只在呈现的 PDF 中看到“Page of”。
我正在使用 Chrome-PDF 配方,不希望在页脚中使用 pdf-utils。
即使我在主报表正文视图中放入以下行,我仍然没有得到任何页码。
Page <span class="pageNumber"></span> of <span class="totalPages"></span>
如有任何帮助,我们将不胜感激。
header html 需要传递给 Template.Chrome.HeaderTemplate 属性,您还需要使用 Template.Chrome.DisplayHeaderFooter 启用 header 打印并使用边距为 header 制作 space。
这是控制器操作的样子
[MiddlewareFilter(typeof(JsReportPipeline))]
public async Task<IActionResult> InvoiceWithHeader()
{
var header = await JsReportMVCService.RenderViewToStringAsync(HttpContext, RouteData, "Header", new { });
HttpContext.JsReportFeature()
.Recipe(Recipe.ChromePdf)
.Configure((r) => r.Template.Chrome = new Chrome {
HeaderTemplate = header,
DisplayHeaderFooter = true,
MarginTop = "1cm",
MarginLeft = "1cm",
MarginBottom = "1cm",
MarginRight = "1cm"
});
return View("Invoice", InvoiceModel.Example());
}
以及 Header 观点如何
<div style='text-align:center; font-size: 10px; width:100%'>Page number <span class="pageNumber"></span> of <span class="totalPages"></span></div>
您可以在此处找到示例存储库
https://github.com/jsreport/jsreport-dotnet-example-webapp
我在 Asp.Net 核心 MVC 项目中使用 jsreport。除页码外,一切正常。
我正在为页脚使用部分视图。
这是局部视图:
<table style="font-size: 10px; padding-bottom: 5px; padding-top: 0in; padding-left: 0.25in; padding-right: 0.25in;">
<tbody>
<tr>
<td style="width: 1.5in; text-align: left;"><b>@($"{DateTime.Now}")</b></td>
<td style="width: 8.2in; text-align: center;">Brand Name</td>
<td style="width: 1.5in; text-align: right;">Page <span class="pageNumber"></span> of <span class="totalPages"></span></td>
</tr>
</tbody>
</table>
不幸的是,页码部分根本不起作用。我只在呈现的 PDF 中看到“Page of”。
我正在使用 Chrome-PDF 配方,不希望在页脚中使用 pdf-utils。
即使我在主报表正文视图中放入以下行,我仍然没有得到任何页码。
Page <span class="pageNumber"></span> of <span class="totalPages"></span>
如有任何帮助,我们将不胜感激。
header html 需要传递给 Template.Chrome.HeaderTemplate 属性,您还需要使用 Template.Chrome.DisplayHeaderFooter 启用 header 打印并使用边距为 header 制作 space。
这是控制器操作的样子
[MiddlewareFilter(typeof(JsReportPipeline))]
public async Task<IActionResult> InvoiceWithHeader()
{
var header = await JsReportMVCService.RenderViewToStringAsync(HttpContext, RouteData, "Header", new { });
HttpContext.JsReportFeature()
.Recipe(Recipe.ChromePdf)
.Configure((r) => r.Template.Chrome = new Chrome {
HeaderTemplate = header,
DisplayHeaderFooter = true,
MarginTop = "1cm",
MarginLeft = "1cm",
MarginBottom = "1cm",
MarginRight = "1cm"
});
return View("Invoice", InvoiceModel.Example());
}
以及 Header 观点如何
<div style='text-align:center; font-size: 10px; width:100%'>Page number <span class="pageNumber"></span> of <span class="totalPages"></span></div>
您可以在此处找到示例存储库
https://github.com/jsreport/jsreport-dotnet-example-webapp