Hello,
I am converting an HTML file to PDF and the first selector of the external CSS file is always ignored. I tried this in multiple scenarios.
My CSS File:
#test{
color: red;
}
h1 {
color: green;
}
th {
color: darkblue;
}
.navcode {
color: deeppink;
}
In this case #test
will not be applied during conversion.
If I put a selector in front of #test
this one is ignored. This is my workaround:
#unused, #test{
color: red;
}
h1 {
color: green;
}
th {
color: darkblue;
}
.navcode {
color: deeppink;
}
Am I doing something wrong or is this a bug?
This is my code:
HtmlLoadOptions htmlLoadOptions = new HtmlLoadOptions();
htmlLoadOptions.PageInfo.IsLandscape = false;
htmlLoadOptions.PageInfo.Height = 11.69 * 72;
htmlLoadOptions.PageInfo.Width = 8.6 * 72;
htmlLoadOptions.PageInfo.Margin.Left = 0;
htmlLoadOptions.PageInfo.Margin.Right = 0;
htmlLoadOptions.PageInfo.Margin.Top = 0;
htmlLoadOptions.PageInfo.Margin.Bottom = 0;
<span style="color:green;">//Load HTML string</span>
<span style="color:#2b91af;">Document</span> doc = <span style="color:blue;">new</span> <span style="color:#2b91af;">Document</span>(<span style="color:blue;">new</span> <span style="color:#2b91af;">MemoryStream</span>(System.Text.<span style="color:#2b91af;">Encoding</span>.UTF8.GetBytes(htmlpage)), htmlLoadOptions);
<span style="color:green;">//Save PDF file</span>
<span style="color:#2b91af;">MemoryStream</span> docStream = <span style="color:blue;">new</span> <span style="color:#2b91af;">MemoryStream</span>();
doc.Save(docStream, <span style="color:#2b91af;">SaveFormat</span>.Pdf);
docStream.Close();</pre><br><br>HTML:<br><br><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">html</span><span class="nodeBracket editable insertBefore ">></span></span><div role="group" class="nodeChildBox "><div role="presentation" class="nodeBox containerNodeBox open"><div role="presentation" class="nodeLabel "><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">head</span><span class="nodeBracket editable insertBefore ">></span></span></div><div role="group" class="nodeChildBox "><div role="presentation" class="nodeBox textNodeBox "><div role="presentation" class="nodeLabel "><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">title</span><span class="nodeBracket editable insertBefore ">></span><span class="nodeText editable "><span class=" ">Offer</span></span></<span class="nodeTag ">title</span>></span></div></div><div role="presentation" class="nodeBox containerNodeBox "><div role="presentation" class="nodeLabel "><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">link</span><span class="nodeAttr editGroup "> <span class="nodeName editable ">href</span>="<span class="nodeValue editable ">http://localhost:55557/App_Styles/PdfOfferThemes/Global.css</span>"</span><span class="nodeAttr editGroup "> <span class="nodeName editable ">rel</span>="<span class="nodeValue editable ">stylesheet</span>"</span><span class="nodeAttr editGroup "> <span class="nodeName editable ">type</span>="<span class="nodeValue editable ">text/css</span>"</span><span class="nodeBracket editable insertBefore ">></span></span></div></div></div><div role="presentation" class="nodeCloseLabel "><span class="nodeCloseLabelBox repTarget "></<span class="nodeTag ">head</span>></span></div></div><div role="presentation" class="nodeBox containerNodeBox selected open"><div role="presentation" class="nodeLabel "><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">body</span><span class="nodeBracket editable insertBefore ">></span></span></div><div role="group" class="nodeChildBox "><div role="presentation" class="nodeBox textNodeBox "><div role="presentation" class="nodeLabel "><span role="treeitem" class="nodeLabelBox repTarget "><<span class="nodeTag ">h1</span><span class="nodeBracket editable insertBefore ">>Offer</span></<span class="nodeTag ">h1</span>><br><h2>2nd line</h2><br></span></div></div></div><div role="presentation" class="nodeCloseLabel "><span class="nodeCloseLabelBox repTarget "></<span class="nodeTag ">body</span>></span></div></div></div><div role="presentation" class="nodeCloseLabel "><span class="nodeCloseLabelBox repTarget "></<span class="nodeTag ">html</span>><br><br><br>Global.css:<br><br></span></div><pre style="font-family:Consolas;font-size:15;color:black;background:white;"><span style="color:maroon;">h1</span>{
<span style="color:red;">color</span>:<span style="color:blue;">red</span>;
}
h2{
color:green;
}
Result in Browser:
h1 is red, h2 is green
Result in Pdf:
h1 is black, h2 is green
Hi Philipp,
Thanks for contacting support.
I have tested the scenario and have observed that color information for both Heading objects is ignored during HTML to PDF conversion. For the sake of correction, I have logged this problem
as PDFNEWNET-40444 in our issue tracking system. We will
further look into the details of this problem and will keep you updated on the
status of correction. Please be patient and spare us little time. We are sorry
for this inconvenience.
The issues you have found earlier (filed as PDFNET-40444) have been fixed in Aspose.PDF for .NET 22.7.