release 1.01 修复chart图的一些bug

This commit is contained in:
csh 2022-12-23 10:47:34 +08:00
parent 0b4a534b71
commit 318d4ba97e
5 changed files with 106 additions and 108 deletions

View File

@ -1,6 +1,7 @@
///Create by Tinysoft. ///Create by Tinysoft.
///自动生成 TSDocxFile 帮助文件 ///自动生成 TSDocxFile 帮助文件
mtic;SetProfiler(7); mtic;
//SetProfiler(7);
docx := new TSDocxFile(); docx := new TSDocxFile();
[err, errmsg] := docx.NewFile(); [err, errmsg] := docx.NewFile();
if err then if err then
@ -63,11 +64,11 @@ _Faq(docx);
///目录 ///目录
docx.AddTableContent(paragraphTitle, 1, 3); docx.AddTableContent(paragraphTitle, 1, 3);
v := docx.SaveAs('', 'D:/temp/help.docx'); v := docx.SaveAs('', 'TSDocFile-Help.docx');
println('Test Over!\n Save {}: {},time={}', file, v, mtoc); println('Test Over!\n Save {}: {},time={}', file, v, mtoc);
info := GetProfilerInfo(true); //info := GetProfilerInfo(true);
exportfile(ftstream(),'','f:\\temp\\ProfilerInfo.stm',info); //exportfile(ftstream(),'','f:\\temp\\ProfilerInfo.stm',info);
/////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////
///子函数 ///子函数
@ -695,6 +696,7 @@ Begin
docx.AddChart(chart, -1); docx.AddChart(chart, -1);
_AddTitle(docx, '案例二广东省2019——2021年GDP折线图', 2); _AddTitle(docx, '案例二广东省2019——2021年GDP折线图', 2);
chart.Name := 'GD-GDP-2';
chart.Type := 'line'; chart.Type := 'line';
chart.ShowBubbleSize := false; chart.ShowBubbleSize := false;
chart.ShowPercent := false; chart.ShowPercent := false;
@ -707,6 +709,7 @@ Begin
docx.AddChart(chart, -1); docx.AddChart(chart, -1);
_AddTitle(docx, '案例三广东省2021年GDP饼状图', 2); _AddTitle(docx, '案例三广东省2021年GDP饼状图', 2);
chart.Name := 'GD-GDP-3';
chart.Title := '广东省2021年GDP(单位:亿元)'; chart.Title := '广东省2021年GDP(单位:亿元)';
chart.Type := 'pie'; chart.Type := 'pie';
chart.ShowCatName := true; chart.ShowCatName := true;
@ -714,67 +717,66 @@ Begin
chart.AddSeries('广东省', names, (tmpData[2])[1:]); chart.AddSeries('广东省', names, (tmpData[2])[1:]);
docx.AddChart(chart, -1); docx.AddChart(chart, -1);
charts := array(("Type":"area","图表类型":"面积图"), charts := array(("Type":"area","图表类型":"标准二维面积图"),
("Type":"areastacked","图表类型":""), ("Type":"areastacked","图表类型":"二维堆积面积图"),
("Type":"areapercentstacked","图表类型":""), ("Type":"areapercentstacked","图表类型":"二维百分比堆积面积图"),
("Type":"area3d","图表类型":""), ("Type":"area3d","图表类型":"标准三维面积图"),
("Type":"area3dstacked","图表类型":""), ("Type":"area3dstacked","图表类型":"三维堆积面积图"),
("Type":"area3dpercentstacked","图表类型":""), ("Type":"area3dpercentstacked","图表类型":"三维百分比堆积面积图"),
("Type":"bar","图表类型":""), ("Type":"bar","图表类型":"二维簇状条形图"),
("Type":"barstacked","图表类型":""), ("Type":"barstacked","图表类型":"二维堆积条形图"),
("Type":"barpercentstacked","图表类型":""), ("Type":"barpercentstacked","图表类型":"二维百分比堆积条形图"),
("Type":"bar3dclustered","图表类型":""), ("Type":"bar3dclustered","图表类型":"三维簇状条形图"),
("Type":"bar3dstacked","图表类型":""), ("Type":"bar3dstacked","图表类型":"三维堆积条形图"),
("Type":"bar3dpercentstacked","图表类型":""), ("Type":"bar3dpercentstacked","图表类型":"三维百分比堆积条形图"),
("Type":"bar3dconeclustered","图表类型":""), ("Type":"bar3dconeclustered","图表类型":"三维簇状水平圆锥图"),
("Type":"bar3dconestacked","图表类型":""), ("Type":"bar3dconestacked","图表类型":"三维堆积水平圆锥图"),
("Type":"bar3dconepercentstacked","图表类型":""), ("Type":"bar3dconepercentstacked","图表类型":"三维堆积百分比水平圆锥图"),
("Type":"bar3dpyramidclustered","图表类型":""), ("Type":"bar3dpyramidclustered","图表类型":"三维簇状水平棱锥图"),
("Type":"bar3dpyramidstacked","图表类型":""), ("Type":"bar3dpyramidstacked","图表类型":"三维堆积水平棱锥图"),
("Type":"bar3dpyramidpercentstacked","图表类型":""), ("Type":"bar3dpyramidpercentstacked","图表类型":"三维堆积百分比水平棱锥图"),
("Type":"bar3dcylinderclustered","图表类型":""), ("Type":"bar3dcylinderclustered","图表类型":"三维簇状水平圆柱图"),
("Type":"bar3dcylinderstacked","图表类型":""), ("Type":"bar3dcylinderstacked","图表类型":"三维堆积水平圆柱图"),
("Type":"bar3dcylinderpercentstacked","图表类型":""), ("Type":"bar3dcylinderpercentstacked","图表类型":"三维堆积百分比水平圆柱图"),
("Type":"col","图表类型":""), ("Type":"col","图表类型":"二维簇状柱形图"),
("Type":"colstacked","图表类型":""), ("Type":"colstacked","图表类型":"二维堆积柱形图"),
("Type":"colpercentstacked","图表类型":""), ("Type":"colpercentstacked","图表类型":"二维百分比堆积柱形图"),
("Type":"col3d","图表类型":""), ("Type":"col3d","图表类型":"三维簇状柱形图"),
("Type":"col3dclustered","图表类型":""), ("Type":"col3dclustered","图表类型":"三维柱形图"),
("Type":"col3dstacked","图表类型":""), ("Type":"col3dstacked","图表类型":"三维堆积柱形图"),
("Type":"col3dpercentstacked","图表类型":""), ("Type":"col3dpercentstacked","图表类型":"三维百分比堆积柱形图"),
("Type":"col3dcone","图表类型":""), ("Type":"col3dcone","图表类型":"三维圆锥图"),
("Type":"col3dconeclustered","图表类型":""), ("Type":"col3dconeclustered","图表类型":"三维簇状圆锥图"),
("Type":"col3dconestacked","图表类型":""), ("Type":"col3dconestacked","图表类型":"三维堆积圆锥图"),
("Type":"col3dconepercentstacked","图表类型":""), ("Type":"col3dconepercentstacked","图表类型":"三维百分比堆积圆锥图"),
("Type":"col3dpyramid","图表类型":""), ("Type":"col3dpyramid","图表类型":"三维棱锥图"),
("Type":"col3dpyramidclustered","图表类型":""), ("Type":"col3dpyramidclustered","图表类型":"三维簇状棱锥图"),
("Type":"col3dpyramidstacked","图表类型":""), ("Type":"col3dpyramidstacked","图表类型":"三维堆积棱锥图"),
("Type":"col3dpyramidpercentstacked","图表类型":""), ("Type":"col3dpyramidpercentstacked","图表类型":"三维百分比堆积棱锥图"),
("Type":"col3dcylinder","图表类型":""), ("Type":"col3dcylinder","图表类型":"三维圆柱图"),
("Type":"col3dcylinderclustered","图表类型":""), ("Type":"col3dcylinderclustered","图表类型":"三维簇状圆柱图"),
("Type":"col3dcylinderstacked","图表类型":""), ("Type":"col3dcylinderstacked","图表类型":"三维堆积圆柱图"),
("Type":"col3dcylinderpercentstacked","图表类型":""), ("Type":"col3dcylinderpercentstacked","图表类型":"三维百分比堆积圆柱图"),
("Type":"bubble","图表类型":""), ("Type":"bubble","图表类型":"气泡图"),
("Type":"bubble3d","图表类型":""), ("Type":"bubble3d","图表类型":"3D气泡图"),
("Type":"doughnut","图表类型":""), ("Type":"doughnut","图表类型":"圆环图"),
("Type":"line","图表类型":""), ("Type":"line","图表类型":"折线图"),
("Type":"pie3d","图表类型":""), ("Type":"pie3d","图表类型":"三维饼图"),
("Type":"pie","图表类型":""), ("Type":"pie","图表类型":"饼图"),
("Type":"pieofpiechart","图表类型":""), ("Type":"radar","图表类型":"雷达图"),
("Type":"barofpiechart","图表类型":""), ("Type":"scatter","图表类型":"散点图"),
("Type":"radar","图表类型":""), ("Type":"surface3d","图表类型":"三维曲面图"),
("Type":"scatter","图表类型":""), ("Type":"wireframesurface3d","图表类型":"三维曲面图(框架图)"),
("Type":"surface3d","图表类型":""), ("Type":"contour","图表类型":"曲面图"),
("Type":"wireframesurface3d","图表类型":""), ("Type":"wireframecontour","图表类型":"曲面图(俯视框架图)"));
("Type":"contour","图表类型":""),
("Type":"wireframecontour","图表类型":""));
_AddTitle(docx, '系统支持的图表类型', 2); _AddTitle(docx, '系统支持的图表类型', 2);
tbl := docx.CreateTable(charts); tbl := docx.CreateTable(charts, true, true);
tbl.Format.Indent := 500; tbl.Format.Indent := 500;
tbl.format.IndentType := 'dxa'; tbl.format.IndentType := 'dxa';
//设置列宽 //设置列宽
tbl.ColumnWidth(1, 2000); tbl.ColumnWidth(1, 2000);
tbl.ColumnWidth(2, 12000); tbl.ColumnWidth(2, 6000);
tbl.ColumnWidth(3, 8000);
tbl := docx.InsertTable(tbl, -1); tbl := docx.InsertTable(tbl, -1);
println(' >>OK\n'); println(' >>OK\n');
@ -973,12 +975,12 @@ Begin
if istable(sysparams[f]) then Begin if istable(sysparams[f]) then Begin
return sysParams[f, className]; return sysParams[f, className];
End; End;
sysparams[f] := array();
[err,fh] := io_open(f); [err,fh] := io_open(f);
if err then return array(); if err then return array();
[err, data] := io_read(fh); [err, data] := io_read(fh);
io_close(fh); io_close(fh);
if err then return array(); if err then return array();
sysparams[f] := array();
comment := ''; comment := '';
cName := ''; cName := '';

View File

@ -1095,6 +1095,7 @@ type TChartImpl=class(NodeInfo)
,("field":"Legend","name":Legend.NodeName,"obj":Legend,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"TLegend") ,("field":"Legend","name":Legend.NodeName,"obj":Legend,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"TLegend")
,("field":"Plotarea","name":Plotarea.NodeName,"obj":Plotarea,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"TplotArea") ,("field":"Plotarea","name":Plotarea.NodeName,"obj":Plotarea,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"TplotArea")
,("field":"ShowBlanksAs","name":"ShowBlanksAs","obj":ShowBlanksAs,"attrEx":"","nodeType":"","attrName":"", "desc":"此元素指定如何在图表上绘制空白单元格。", "class":"") ,("field":"ShowBlanksAs","name":"ShowBlanksAs","obj":ShowBlanksAs,"attrEx":"","nodeType":"","attrName":"", "desc":"此元素指定如何在图表上绘制空白单元格。", "class":"")
,("field":"plotVisOnly","name":"plotVisOnly","obj":plotVisOnly,"attrEx":"","nodeType":"","attrName":"", "desc":"此元素指定如何在图表上绘制空白单元格。", "class":"")
,("field":"ChartNode","name":"ChartNode","obj":ChartNode,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"") ,("field":"ChartNode","name":"ChartNode","obj":ChartNode,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"")
,("field":"C","name":"C","obj":C,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"") ,("field":"C","name":"C","obj":C,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"")
,("field":"xmlObj","name":"xmlObj","obj":xmlObj,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"") ,("field":"xmlObj","name":"xmlObj","obj":xmlObj,"attrEx":"","nodeType":"","attrName":"", "desc":"disable", "class":"")
@ -1130,6 +1131,7 @@ type TChartImpl=class(NodeInfo)
Legend; Legend;
Plotarea; Plotarea;
ShowBlanksAs; ShowBlanksAs;
plotVisOnly;
ChartNode; ChartNode;
C; C;
xmlObj; xmlObj;
@ -3005,8 +3007,8 @@ type TView3D=class(NodeInfo)
Function GetChildren(); override; Function GetChildren(); override;
Begin Begin
HandleChildren(); HandleChildren();
return array(("field":"RotX","name":"c:rotX","obj":RotX,"attrEx":"rgb","nodeType":"","attrName":"", "desc":"", "class":"") return array(("field":"RotX","name":"c:rotX","obj":RotX,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"")
,("field":"RotY","name":"c:rotY","obj":RotY,"attrEx":"index","nodeType":"","attrName":"", "desc":"", "class":"") ,("field":"RotY","name":"c:rotY","obj":RotY,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"")
,("field":"RAngAx","name":"c:rAngAx","obj":RAngAx,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"") ,("field":"RAngAx","name":"c:rAngAx","obj":RAngAx,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"")
,("field":"DepthPercent","name":"c:depthPercent","obj":DepthPercent,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"") ,("field":"DepthPercent","name":"c:depthPercent","obj":DepthPercent,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"")
,("field":"Perspective","name":"c:perspective","obj":Perspective,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"") ,("field":"Perspective","name":"c:perspective","obj":Perspective,"attrEx":"","nodeType":"","attrName":"", "desc":"", "class":"")
@ -8772,10 +8774,11 @@ Type TChart = Class(TChartImpl)
Serialize(); Serialize();
//以下数据不更新只更新Series //以下数据不更新只更新Series
Plotarea.Layout := nil; Plotarea.Layout := nil;
Plotarea.CatAx := nil; Plotarea.CatAx := new TcAxs(Plotarea, 'c:catAx');
Plotarea.ValAx := nil; Plotarea.ValAx := new TcAxs(Plotarea, 'c:valAx');
Plotarea.SerAx := nil; Plotarea.SerAx := new TcAxs(Plotarea, 'c:serAx');
Plotarea.SpPr := nil; Plotarea.SpPr := new TspPr(Plotarea, 'c:spPr');
tmp := Plotarea.Chart.ExtNodes; tmp := Plotarea.Chart.ExtNodes;
Plotarea.Chart := new TcCharts(); Plotarea.Chart := new TcCharts();
Plotarea.Chart.ExtNodes := tmp; Plotarea.Chart.ExtNodes := tmp;
@ -8937,7 +8940,7 @@ private
SerAx.AxID := 832256642; SerAx.AxID := 832256642;
SerAx.Scaling.Max := YAxis.Max; SerAx.Scaling.Max := YAxis.Max;
SerAx.Scaling.Min := YAxis.Min; SerAx.Scaling.Min := YAxis.Min;
CatAx.Scaling.Orientation := YAxis.ReverseOrder ? 'maxMin' : 'minMax'; SerAx.Scaling.Orientation := YAxis.ReverseOrder ? 'maxMin' : 'minMax';
SerAx.Del := YAxis.None; SerAx.Del := YAxis.None;
SerAx.AxPos := XAxis.ReverseOrder ? 't' : 'b'; SerAx.AxPos := XAxis.ReverseOrder ? 't' : 'b';
SerAx.TickLblPos := 'nextTo'; SerAx.TickLblPos := 'nextTo';
@ -9179,7 +9182,7 @@ private
setXVal(ser.XVal, i); setXVal(ser.XVal, i);
setYVal(ser.YVal, i); setYVal(ser.YVal, i);
setBubbleSize(ser.BubbleSize, i); setBubbleSize(ser.BubbleSize, i);
setBubble3D(ser.Bubble3D, i); setBubble3D(ser, i);
End; End;
o.chart.Ser := SerArr; o.chart.Ser := SerArr;
End; End;
@ -9196,33 +9199,38 @@ private
strRef.strCache.pt.V := name; strRef.strCache.pt.V := name;
End; End;
Function setBubble3D(Bubble3D, i); Function setBubble3D(ser, i);
Begin Begin
if Type <> 'bubble3d' then return; if Type <> 'bubble3d' then return;
Bubble3D := true; ser.Bubble3D := true;
End; End;
Function setBubbleSize(BubbleSize, i); Function setBubbleSize(BubbleSize, i);
Begin Begin
if not (Type in array('bubble', 'bubble3d')) then return; if not (Type in array('bubble', 'bubble3d')) then return;
BubbleSize.NumRef.F := Series[i]['Values']; _setVal(BubbleSize, i);
End; End;
Function setYVal(Val, i); Function setYVal(Val, i);
Begin Begin
if not (Type in array('scatter', 'bubble', 'bubble3d')) then return; if not (Type in array('scatter', 'bubble', 'bubble3d')) then return;
setVal(Val, i); _setVal(Val, i);
End; End;
Function setXVal(xVal, i); Function setXVal(xVal, i);
Begin Begin
if not (Type in array('scatter')) then return; if not (Type in array('scatter')) then return;
setCat(xVal, i); _setCat(xVal, i);
End; End;
Function setVal(Val, ind); Function setVal(Val, ind);
Begin Begin
if Type in array('scatter', 'bubble', 'bubble3d') then return; if Type in array('scatter', 'bubble', 'bubble3d') then return;
_setVal(Val, ind);
End;
Function _setVal(Val, ind);
Begin
data := Series[ind]['Values']; data := Series[ind]['Values'];
if ifstring(data) then if ifstring(data) then
Val.NumRef.F := data; //excel图表Sheet1!$C$2:$C$6 Val.NumRef.F := data; //excel图表Sheet1!$C$2:$C$6
@ -9244,6 +9252,11 @@ private
Function setCat(Cat, ind); Function setCat(Cat, ind);
Begin Begin
if Type in array('scatter', 'bubble', 'bubble3d') then return; if Type in array('scatter', 'bubble', 'bubble3d') then return;
_setCat(Cat, ind);
End;
Function _setCat(Cat, ind);
Begin
Categories := Series[ind]['Categories']; Categories := Series[ind]['Categories'];
if ifstring(Categories) then if ifstring(Categories) then
cat.StrRef.F := Categories; //excel图表Sheet1!$B$2:$B$6 cat.StrRef.F := Categories; //excel图表Sheet1!$B$2:$B$6
@ -9419,7 +9432,7 @@ private
'col3dcylinderstacked': 'bar3DChart', 'col3dcylinderstacked': 'bar3DChart',
'col3dcylinderpercentstacked': 'bar3DChart', 'col3dcylinderpercentstacked': 'bar3DChart',
'bubble': 'bubbleChart', 'bubble': 'bubbleChart',
'bubble3D': 'bubbleChart'); 'bubble3d': 'bubbleChart');
return 'c:' $ m[t]; return 'c:' $ m[t];
End; End;
@ -9439,44 +9452,44 @@ private
m := array( m := array(
'area': 'standard', 'area': 'standard',
'areastacked': 'stacked', 'areastacked': 'stacked',
'areapercentstacked': 'percentstacked', 'areapercentstacked': 'percentStacked',
'area3d': 'standard', 'area3d': 'standard',
'area3dstacked': 'stacked', 'area3dstacked': 'stacked',
'area3dpercentstacked': 'percentstacked', 'area3dpercentstacked': 'percentStacked',
'bar': 'clustered', 'bar': 'clustered',
'barstacked': 'stacked', 'barstacked': 'stacked',
'barpercentstacked': 'percentstacked', 'barpercentstacked': 'percentStacked',
'bar3dclustered': 'clustered', 'bar3dclustered': 'clustered',
'bar3dstacked': 'stacked', 'bar3dstacked': 'stacked',
'bar3dpercentstacked': 'percentstacked', 'bar3dpercentstacked': 'percentStacked',
'bar3dconeclustered': 'clustered', 'bar3dconeclustered': 'clustered',
'bar3dconestacked': 'stacked', 'bar3dconestacked': 'stacked',
'bar3dconepercentstacked': 'percentstacked', 'bar3dconepercentstacked': 'percentStacked',
'bar3dpyramidclustered': 'clustered', 'bar3dpyramidclustered': 'clustered',
'bar3dpyramidstacked': 'stacked', 'bar3dpyramidstacked': 'stacked',
'bar3dpyramidpercentstacked': 'percentstacked', 'bar3dpyramidpercentstacked': 'percentStacked',
'bar3dcylinderclustered': 'clustered', 'bar3dcylinderclustered': 'clustered',
'bar3dcylinderstacked': 'stacked', 'bar3dcylinderstacked': 'stacked',
'bar3dcylinderpercentstacked': 'percentstacked', 'bar3dcylinderpercentstacked': 'percentStacked',
'col': 'clustered', 'col': 'clustered',
'colstacked': 'stacked', 'colstacked': 'stacked',
'colpercentstacked': 'percentstacked', 'colpercentstacked': 'percentStacked',
'col3d': 'standard', 'col3d': 'standard',
'col3dclustered': 'clustered', 'col3dclustered': 'clustered',
'col3dstacked': 'stacked', 'col3dstacked': 'stacked',
'col3dpercentstacked': 'percentstacked', 'col3dpercentstacked': 'percentStacked',
'col3dcone': 'standard', 'col3dcone': 'standard',
'col3dconeclustered': 'clustered', 'col3dconeclustered': 'clustered',
'col3dconestacked': 'stacked', 'col3dconestacked': 'stacked',
'col3dconepercentstacked': 'percentstacked', 'col3dconepercentstacked': 'percentStacked',
'col3dpyramid': 'standard', 'col3dpyramid': 'standard',
'col3dpyramidclustered': 'clustered', 'col3dpyramidclustered': 'clustered',
'col3dpyramidstacked': 'stacked', 'col3dpyramidstacked': 'stacked',
'col3dpyramidpercentstacked': 'percentstacked', 'col3dpyramidpercentstacked': 'percentStacked',
'col3dcylinder': 'standard', 'col3dcylinder': 'standard',
'col3dcylinderclustered': 'clustered', 'col3dcylinderclustered': 'clustered',
'col3dcylinderstacked': 'stacked', 'col3dcylinderstacked': 'stacked',
'col3dcylinderpercentstacked': 'percentstacked', 'col3dcylinderpercentstacked': 'percentStacked',
'line': 'standard'); 'line': 'standard');
return m[t]; return m[t];
End; End;

View File

@ -12,13 +12,13 @@ Type ErrorMessage = class
class Function SheetExist(sheetName) class Function SheetExist(sheetName)
Begin Begin
sheetName := ifString(sheetName) ?: ''; sheetName := ifString(sheetName) ?: ' ';
return array(2, sheetName + ' already exists.'); return array(2, sheetName + ' already exists.');
End; End;
class Function SheetNotExist(sheetName) class Function SheetNotExist(sheetName)
Begin Begin
sheetName := ifString(sheetName) ?: ''; sheetName := ifString(sheetName) ?: ' ';
return array(3, sheetName + ' does not exist.'); return array(3, sheetName + ' does not exist.');
End; End;

View File

@ -104,6 +104,7 @@ Type TSChart = Class
Begin Begin
chartData_.Serialize(IsWord()); //初始化图表数据 chartData_.Serialize(IsWord()); //初始化图表数据
task := array(('c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:t', 'pcdata', chartData_.Title), task := array(('c:chartSpace/c:chart/c:title/c:tx/c:rich/a:p/a:r/a:t', 'pcdata', chartData_.Title),
('c:chartSpace/c:chart/c:plotVisOnly', 'val', chartData_.plotVisOnly),
('c:chartSpace/c:chart/c:dispBlanksAs', 'val', chartData_.ShowBlanksAs), ('c:chartSpace/c:chart/c:dispBlanksAs', 'val', chartData_.ShowBlanksAs),
('c:chartSpace/c:chart/c:legend', 'Del', ifnil(chartData_.Legend)), ('c:chartSpace/c:chart/c:legend', 'Del', ifnil(chartData_.Legend)),
('c:chartSpace/c:chart/c:plotArea', 'unmarshal', chartData_.plotArea.Marshal()), ('c:chartSpace/c:chart/c:plotArea', 'unmarshal', chartData_.plotArea.Marshal()),

View File

@ -1,18 +0,0 @@
Type xlsxRichText = Class
file_; //TSExcelFile对象
sheet_;//XmlSheet对象
Function Create(); overload;
Begin
End;
class Function NewObject(sheetname, self);
Begin
file_ := file;
o = file_.WorkBook().GetSheetObj(sheetname);
if not ifObj(o) then return 0;
richTxt := new xlsxRichText();
richTxt.sheet_ = o;
richTxt.file_ := file;
return richTxt;
End;
End;