#c# #html #dinktopdf
#c# #HTML #динктопдф
Вопрос:
Я создаю html
представления stringbuilder
и использую DinkToPDF
их для преобразования этого HTML-кода в PDF. Я смог добавить верхний и нижний колонтитулы, используя следующее (путем создания статических HTML
страниц:
var objectSettings = new ObjectSettings
{
PagesCount = true,
HtmlContent = await _template.Build(data, hostUrl),
//HeaderSettings = { HtmUrl = hostUrl "/views/v1/getview?reportName=AcademicTranscriptamp;viewName=test.htmlamp;themeName=SchoolTheme_SchoolId",
HeaderSettings = { HtmUrl = hostUrl _swaggerConfig.BasePath "/views/v1/getview?reportName=AcademicTranscriptamp;viewName=portraitheader.html",
Line = true, Right = "[page]/[sitepages]", Spacing = 5 },
FooterSettings = { HtmUrl = hostUrl _swaggerConfig.BasePath "/views/v1/getview?reportName=AcademicTranscriptamp;viewName=portraitfooter.html",
Line = true },
};
Это отлично работает, но мне нужно добавить пользовательское html
представление как часть заголовка, которое содержит такие сведения, как имя, фамилия, адрес и т.д.
Есть ли способ добавить пользовательскую страницу (имеется в виду Html-теги и т.д. с информацией из базы данных) в заголовок?
Я надеюсь, что мой вопрос имеет смысл.
Спасибо за любую помощь.
Ответ №1:
Похоже, что на данный момент существует 2 способа настройки содержимого заголовка документа в настройках заголовков в DinkToPDF:
- заполните
Left
,Center
,Right
свойства обычным текстом - передайте путь к заголовочному файлу в формате HTML в
HtmUrl
свойстве
Таким образом, вы можете получить необходимые данные из базы данных, заполнить файл заголовка HTML с помощью средства визуализации HTML, подобного этому, передать путь к файлу заголовка HeaderSettings.HtmUrl
свойству, сгенерировать свой PDF-документ с помощью DinkToPDF и впоследствии удалить файл заголовка.
Пример генерации HTML-файлов по шаблону можно найти здесь