2013-09-04 6 views
3

Я знаю, что можно вынести «Страница X из Y» в/нижнего колонтитула с помощью C# API, как это:Эво Pdf - Нумерация страниц внутри HTML

//write the page number 
TextElement footerText = new TextElement(0, pdfConverter.PdfFooterOptions.FooterHeight - 15, "This is page &p; of &P; ", 
    new System.Drawing.Font(new System.Drawing.FontFamily("Times New Roman"), 10, System.Drawing.GraphicsUnit.Point)); 
footerText.EmbedSysFont = true; 
footerText.TextAlign = HorizontalTextAlign.Right; 
pdfConverter.PdfFooterOptions.AddElement(footerText); 

..но я бы скорее положение и стиль его непосредственно в HTML с помощью:

HtmlToPdfElement footerHtml = new HtmlToPdfElement(pdfOptions.DocumentFooterHtmlString, pdfOptions.BaseUrl); 
footerHtml.FitHeight = true; 
pdfConverter.PdfFooterOptions.AddElement(footerHtml); 

где pdfOptions.DocumentFooterHtmlString выглядит примерно так:

<div class="clearfix"> 
    <span class="pull-right">This is page &p; of &P;</span> 
</div> 

Is это что-то возможно? Если я попробую это, я просто получу: Это страница & p; of & P; оказанные в нижнем колонтитуле.

ответ

2

Я коротко боролся с этим. Ради других, кто находит это через поиск, трюк заключается в том, что при добавлении элемента HTML он должен быть HtmlToPdfVariableElement, а не HtmlToPdfElement.

HtmlToPdfVariableElement footerHtml = new HtmlToPdfVariableElement(pdfOptions.DocumentFooterHtmlString, pdfOptions.BaseUrl); 
footerHtml.FitHeight = true; 
pdfConverter.PdfFooterOptions.AddElement(footerHtml); 
Смежные вопросы