我一直在使用(免费版)HiQPdf 库将 html 页面转换为 pdf 文档。
我还在我的页面中使用了 .Net 框架 (System.Web.UI.DataVisualization.Charting.Chart) 中的几个图表对象来生成条形图形的不显示值随时间变化。当我使用 VS 进行调试时,它在我的本地环境中会产生奇迹,但是当我在我的 IIS 或其他服务器上发布时,图表根本不会出现在 pdf 上 - 注意:它们确实出现在网页上,只是没有出现在 pdf 上。
在 Pdfs 中,所有的 html 都正确显示,包括 css,显示它与页面上看到的完全一样,除了图表图像。我有点理解它们不会像在 html 中那样出现,图表中的图像源会产生类似的结果:
<img id="MainContent_MyPageControl_ctl00" src="/MyTestWebSite/ChartImg.axd?i=charts_0/chart_0_2.png&g=396d61e14ceb41c08be06fd956cd4dca"
因为真正生成的 png 图像甚至没有像往常一样直接引用。但事实是,当从 VS 本地运行时,它们确实出现在生成的 pdf 中,无论如何都会产生与上述类似的 html。我看到的唯一区别是,当我在本地运行时,图像图表处理程序键在 webconfig 中定义为:
add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;"
但是在服务器上发布时,我已将其更改为:
add key="ChartImageHandler" value="storage=file;timeout=20;Url=~/MyfolderTempcharts/;deleteAfterServicing=false;"
那么为什么图表没有出现在我生成的 pdf 上,或者如果我从 VS 运行它们为什么会出现?
有人遇到过这个问题吗?