如何解决由 EPPlus 4.1 库以 .xlsx 格式创建的图表未显示在 openoffice 或 libreoffice 中
EPplus 在 C# 中创建的图表在 LibreOffice 和 OpenOffice 中无法显示,但在 Microsoft Office 中可以正常显示。
有一种解决方法,如果我在 microsoft office 中打开 excel 文件,然后再次保存它,文件图表在 Libreoffice 和 OpenOffice 上正确可见。
Microsoft Office 中显示的图表如下图所示:
在 LibreOffice 和 OpenOffice 中显示的图表如下图所示。
在使用 EPPlus 保存图表时是否需要设置任何属性,以便可以在 OpenOffice 中查看。
解决方法
我也遇到了这个问题,不得不将生成的文件与保存的文件进行比较,并查看源代码以了解如何操作:
对于折线图:
ExcelLineChartSerie serie = (ExcelLineChartSerie)chart.Series.Add(...);
serie.Marker = eMarkerStyle.None;
serie.LineColor = Color.FromArgb( 0x00,0x45,0x86 );
对于条形图:
ExcelChartSerie serie = chart.Series.Add(...);
serie.Fill.Style = eFillStyle.SolidFill;
serie.Fill.Color = Color.FromArgb( 0x00,0x86 );
我还没有使用其他图表,所以可能还有一些其他字段需要初始化。
更新:
我发现我的图表也没有轴,因此必须找出如何说服 libreoffice 绘制它们:
chart.XAxis.Border.Fill.Style = eFillStyle.SolidFill;
chart.XAxis.Border.Fill.Color = Color.FromArgb( 0x00,0x00,0x00 );
chart.YAxis.Border.Fill.Style = eFillStyle.SolidFill;
chart.YAxis.Border.Fill.Color = Color.FromArgb( 0x00,0x00 );
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。