如何在 asp.net 中为 Microsoft Chart Control 生成的图像设置分辨率 (DPI)
如何为 .net 的 microsoft 图表控件(用于创建 .png 图像)创建的图像定义图像分辨率(以 DPI 为单位)。
图表控件的 winforms 版本具有 Chart.RenderingDpi[X|Y]- 属性,但是对于asp.net控件,我找不到这样的属性。
有人可以引导我找到解决方案吗?
更新
在寻找解决方案的过程中,我发现图表控件有一个 Paint 方法。这样我就可以使用其他 DPI 设置创建图像。我不确定这是否是正确的方法,但结果对我来说看起来还不错。我已发布代码作为答案。如果有人有更简洁的解决方案,请告诉我。
How can I define the image resolution (in DPI) for images created by the microsoft chart controls for .net (for the creation of .png-images).
The winforms version of the charting control has the Chart.RenderingDpi[X|Y]- property, however for the asp.net control, I can not find such a property.
Can someone lead me to a solution for doing this?
Update
During searching for a solution, I have seen that the chart-control has a Paint-method. With this I was able to create images with other DPI-settings. I'm not sure if this is the correct way to go, but the result looks not to bad to me. I have posted the code as an answer. If anyone has a more neat solution, please let me know.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是我发现的一个解决方案,可以产生良好的结果。
Here a solution I have found that produces good results.
如果您将问题改写为“如何解决烦人的 jpeg 光栅工件”,我将使用 GetBytes 方法将我的问题输出为 png。然后我使用构造函数来设置高度/宽度。
如果你好奇的话,我在 .net MVC 扩展方法中以这种方式使用它,并将 Base 64 编码为图像
If you rephrase your question as "how to get around annoying jpeg raster artifacts" I output mine as a png using the GetBytes method. I then use the constructor to set height/width.
if you are curious I use it this way in a .net MVC extension method and base 64 encode into a image