Wkhtmltopdf print-media-type仅使用@media print,而忽略其余内容
我有一个使用一个css文件的html文件。在最底部的这个文件中,我将其用于仅需要应用于页面的打印机版本的样式
@media print{
....print styles here...
}
当我调用wkhtmltopdf--print-media-type input.html output.pdf时,它使用仅位于@media print附件中的样式呈现pdf,并忽略未指定@media类型的其余样式
这是正常的吗,还是我做错了什么?我是否需要指定在@media print内打印的所有样式?
解决方案
wkhtmltopdf有一个可以传递的参数--print-media-type
。以下是使用NReco的C#代码示例(仅用于说明目的),但参数的工作方式应该完全相同:
var converter = new NReco.PdfGenerator.HtmlToPdfConverter();
converter.CustomWkHtmlArgs = "--print-media-type";
var pdfBytes = converter.GeneratePdf(html);
return pdfBytes;
这对我在C#中使用NReco使用打印媒体CSS很好,而且它还考虑了不在@media
块中的任何CSS,例如h3
的font-size
。尝试更改文本大小或类似内容,并查看更改是否反映出来。
相关文章