JsReport Рецепт ChromePdf номер страницы - PullRequest
0 голосов
/ 22 мая 2019

Я создаю PDF в asp.net Core с плагином JsReport. Все работает хорошо, за исключением того, что я не могу напечатать номер страницы и общее количество страниц в моем файле PDF.

Я следовал инструкциям в этом документе https://jsreport.net/learn/dotnet-aspnetcore, чтобы настроить контроллер в моем проекте asp.net Core.

Я видел несколько похожих вопросов и ответов, размещенных в stackoverflow, и проверил их, но это не решает мою проблему.
Вопрос 1: Номер страницы JsReport с Chrome-pdf рецептом
Вопрос 2: Номер страницы в отчете

Page&nbsp;<span class="pageNumber"></span>&nbsp;of&nbsp;<span class="totalPages"></span>

Я также пробовал это в моем представлении Razor, но я не вижу ни одного числа в моем pdf.
Пожалуйста, помогите, заранее спасибо!

1 Ответ

1 голос
/ 22 мая 2019

Вы можете найти пример здесь

Основные требования описаны в документации .

Помните, что для отображения верхнего / нижнего колонтитула сначала необходимо активировать опцию displayHeaderFooter и добавить верхний, нижний поля в шаблон, чтобы дать странице некоторое пространство для отображения верхнего / нижнего колонтитула.

Это переведено в интеграцию ядра asp.net

[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());
}
...