ann*_*nna 4 c# charts image itextsharp winforms
我正在编写一个用于可视化测量数据的软件。为此,我使用System.Windows.Forms.DataVisualization.Charting.Chart,我确实知道可以通过chartObj.SaveImage获取显示的图像以将其存储到文件中。
我的软件应具有PDF导出功能,其中应包含图片。为此,我正在使用iTextSharp。同样,我确实知道如何通过iTextSharp.text.Image.GetInstance将存储在文件中的图片放入PDF。
因此,现在我可以拍摄图表的图片,将其放入文件(例如,.jpg文件)中,然后再次加载该文件以将其放入我的PDF中。现在,我正在寻找一个不错的解决方案,以将图片放入PDF而不将其存储到文件中,例如通过Stream或类似的方式。我已经尝试了很长时间,但是直到现在我都没有成功。我想到了类似的东西
Stream imageStream = image of chartObj;
iTextSharp.text.Image picture = iTextSharp.text.Image.GetInstance(imageStream);
Run Code Online (Sandbox Code Playgroud)
据我了解,我无法将chartObj中的图片放入Stream中而不是文件中。如果有这个功能,我想我可以通过iTextSharp.text.Image.GetInstance加载Stream。
有人可以提供一些帮助吗?猜猜并没有那么困难,但是我对C#和iText还是陌生的,所以我在这里有些卡住了。
预先感谢您对此的所有想法!
安娜
将图片保存到MemoryStream:
using (var chartimage = new MemoryStream())
{
chart.SaveImage(chartimage, ChartImageFormat.Png);
return chartimage.GetBuffer();
}
Run Code Online (Sandbox Code Playgroud)
从: Microsoft图表控件到带iTextSharp和ASP.NET MVC的PDF