Reputation: 9720
In my aspx page I have this script with the following css
<style type="text/css">
.subcontainer{margin: 0 auto; padding-top: 20px}
.hide-val{display:none;}
</style>
In the browser the page is loads ok, div with class hide-val
is not displayed but when I use AddImageURL styles is not being applied.
Doc theDoc2 = new Doc();
theDoc2.HtmlOptions.UseScript = true;
theDoc2.HtmlOptions.Media = MediaType.Print;
theDoc2.HtmlOptions.InitialWidth = 1048;
//for multiple page
theDoc2.Rect.Inset(10, 30);
theDoc2.Page = theDoc2.AddPage();
int theID2;
theID2 = theDoc2.AddImageUrl(urlToHtmlPage);
while (true)
{
theDoc2.FrameRect(); // add a black border
if (!theDoc2.Chainable(theID2))
break;
theDoc2.Page = theDoc2.AddPage();
theID2 = theDoc2.AddImageToChain(theID2);
}
for (int i = 1; i <= theDoc2.PageCount; i++)
{
theDoc2.PageNumber = i;
theDoc2.Flatten();
}
//end multipage
theDoc2.Save(HttpContext.Current.Server.MapPath("htmlimport.pdf"));
theDoc2.Clear();
I have seen many questions like this but I haven't found the answer
How can I add the css style in the doc?
Upvotes: 1
Views: 1546
Reputation: 5412
Since you specified theDoc2.HtmlOptions.Media = MediaType.Print;
, have you tried marking your css for @media print
?
Like so:
<style type="text/css">
@media print {
.subcontainer{margin: 0 auto; padding-top: 20px}
.hide-val{display:none;}
}
</style>
Alternatively, take out the line theDoc2.HtmlOptions.Media = MediaType.Print;
I haven't verified this, but it's worth a shot.
Upvotes: 1