0
我有一個帶有圖表的Excel文件。如何使用Open XML SDK獲取特定圖表的圖表類型?
我能夠使用Open XML SDK提供的chartPart屬性來引用圖表。
如何從中獲取圖表類型(bar,pie,line等)?
P.S.我已經查看了這個chartPart變量的結構,但我一直無法弄清楚究竟在哪裏找到類型,軸,顏色等信息。
我有一個帶有圖表的Excel文件。如何使用Open XML SDK獲取特定圖表的圖表類型?
我能夠使用Open XML SDK提供的chartPart屬性來引用圖表。
如何從中獲取圖表類型(bar,pie,line等)?
P.S.我已經查看了這個chartPart變量的結構,但我一直無法弄清楚究竟在哪裏找到類型,軸,顏色等信息。
您可以使用反射概念獲得圖表類型
private IEnumerable<Type> GetExcelChartTypes()
{
IEnumerable<Type> items = new List<Type>();
try
{
DocumentFormat.OpenXml.Drawing.Charts.LineChart linechart = new DocumentFormat.OpenXml.Drawing.Charts.LineChart();
items = Assembly.GetAssembly(linechart.GetType()).GetTypes().Where(S => S.Name.EndsWith("Chart"));
}
catch
{
}
return items;
}
這樣讓所有的圖表部分與
IEnumerable的chartparts = spreadsheet.DrawingsPart.ChartParts前;
然後得到圖表對象與下面線
IEnumerable的 圖表= chartpart.ChartSpace.ChildElements.OfType(); 。
每個圖表對象都有繪圖區域對象獲取該對象並獲取具有GetType()的對象類型。
那麼當然你會得到圖表的名稱。