I want to add custom text on BarChart like this:
How to do this using OpenXML which feature?
Please help
I want to add custom text on BarChart like this:
How to do this using OpenXML which feature?
Please help
This can be achieved by adding text on shape which is not part of chart. It can be placed by positioning spreadsheet rows. Here's are sample codes:
string[] strGenerator = new string[] { "2213969", "2213963", "2213979", "2213969", "2213963", "2213979" };
string[] strRowId = new string[] { "22", "20", "18","18","20","22" };
string[] strColumnId = new string[] { "1", "1", "1", "10", "10", "10" };
string[] strRowOffset = new string[] { "18000", "27000", "27000", "50000", "50000", "50000" }; //{ "80000", "186266", "95036", "81643", "27214", "136071" };
string[] strColumnOffset = new string[] { "489858", "508606", "520699", "497453", "497453", "497453" }; //{ "489858", "508606", "520699", "197453", "182032", "163285" };
for (i = 0; i < 6; i++)
{
Xdr.OneCellAnchor oneCellAnchor6 = new Xdr.OneCellAnchor();
Xdr.FromMarker fromMarker8 = new Xdr.FromMarker();
Xdr.ColumnId columnId10 = new Xdr.ColumnId();
columnId10.Text = strColumnId[i]; // "1";
Xdr.ColumnOffset columnOffset10 = new Xdr.ColumnOffset();
columnOffset10.Text = strColumnOffset[i]; // "520699"
Xdr.RowId rowId10 = new Xdr.RowId();
rowId10.Text = strRowId[i]; //"16";
Xdr.RowOffset rowOffset10 = new Xdr.RowOffset();
rowOffset10.Text = strRowOffset[i];//"95036"; // Convert.ToString(95036*(i+1));// "95036";
fromMarker8.Append(columnId10);
fromMarker8.Append(columnOffset10);
fromMarker8.Append(rowId10);
fromMarker8.Append(rowOffset10);
//Xdr.Extent extent6 = new Xdr.Extent() { Cx = 1782535L, Cy = 204108L };
Xdr.Extent extent6 = new Xdr.Extent() { Cx = 1782535L, Cy = 204108L };
Xdr.Shape shape6 = new Xdr.Shape() { Macro = "", TextLink = "" };
Xdr.NonVisualShapeProperties nonVisualShapeProperties6 = new Xdr.NonVisualShapeProperties();
Xdr.NonVisualDrawingProperties nonVisualDrawingProperties8 = new Xdr.NonVisualDrawingProperties() { Id = (UInt32Value)21U, Name = "TextBox 20" };
A.NonVisualDrawingPropertiesExtensionList nonVisualDrawingPropertiesExtensionList8 = new A.NonVisualDrawingPropertiesExtensionList();
A.NonVisualDrawingPropertiesExtension nonVisualDrawingPropertiesExtension8 = new A.NonVisualDrawingPropertiesExtension() { Uri = "{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}" };
OpenXmlUnknownElement openXmlUnknownElement9 = OpenXmlUnknownElement.CreateOpenXmlUnknownElement("<a16:creationId xmlns:a16=\"http://schemas.microsoft.com/office/drawing/2014/main\" id=\"{6230E3EC-6B4D-47AE-A392-192F8AB4F7CE}\" />");
nonVisualDrawingPropertiesExtension8.Append(openXmlUnknownElement9);
nonVisualDrawingPropertiesExtensionList8.Append(nonVisualDrawingPropertiesExtension8);
nonVisualDrawingProperties8.Append(nonVisualDrawingPropertiesExtensionList8);
Xdr.NonVisualShapeDrawingProperties nonVisualShapeDrawingProperties6 = new Xdr.NonVisualShapeDrawingProperties() { TextBox = true };
nonVisualShapeProperties6.Append(nonVisualDrawingProperties8);
nonVisualShapeProperties6.Append(nonVisualShapeDrawingProperties6);
Xdr.ShapeProperties shapeProperties6 = new Xdr.ShapeProperties();
A.Transform2D transform2D6 = new A.Transform2D();
A.Offset offset8 = new A.Offset() { X = 1130299L, Y = 3276903L };
A.Extents extents8 = new A.Extents() { Cx = 1782535L, Cy = 204108L };
//A.Offset offset8 = new A.Offset() { X = 0, Y = 0 };
//A.Extents extents8 = new A.Extents() { Cx = 0, Cy = 0 };
transform2D6.Append(offset8);
transform2D6.Append(extents8);
A.PresetGeometry presetGeometry6 = new A.PresetGeometry() { Preset = A.ShapeTypeValues.Rectangle };
A.AdjustValueList adjustValueList6 = new A.AdjustValueList();
presetGeometry6.Append(adjustValueList6);
A.NoFill noFill6 = new A.NoFill();
shapeProperties6.Append(transform2D6);
shapeProperties6.Append(presetGeometry6);
shapeProperties6.Append(noFill6);
Xdr.ShapeStyle shapeStyle6 = new Xdr.ShapeStyle();
A.LineReference lineReference6 = new A.LineReference() { Index = (UInt32Value)0U };
A.RgbColorModelPercentage rgbColorModelPercentage16 = new A.RgbColorModelPercentage() { RedPortion = 0, GreenPortion = 0, BluePortion = 0 };
lineReference6.Append(rgbColorModelPercentage16);
A.FillReference fillReference6 = new A.FillReference() { Index = (UInt32Value)0U };
A.RgbColorModelPercentage rgbColorModelPercentage17 = new A.RgbColorModelPercentage() { RedPortion = 0, GreenPortion = 0, BluePortion = 0 };
fillReference6.Append(rgbColorModelPercentage17);
A.EffectReference effectReference6 = new A.EffectReference() { Index = (UInt32Value)0U };
A.RgbColorModelPercentage rgbColorModelPercentage18 = new A.RgbColorModelPercentage() { RedPortion = 0, GreenPortion = 0, BluePortion = 0 };
effectReference6.Append(rgbColorModelPercentage18);
A.FontReference fontReference6 = new A.FontReference() { Index = A.FontCollectionIndexValues.Minor };
A.SchemeColor schemeColor29 = new A.SchemeColor() { Val = A.SchemeColorValues.Text1 };
fontReference6.Append(schemeColor29);
shapeStyle6.Append(lineReference6);
shapeStyle6.Append(fillReference6);
shapeStyle6.Append(effectReference6);
shapeStyle6.Append(fontReference6);
Xdr.TextBody textBody6 = new Xdr.TextBody();
A.BodyProperties bodyProperties6;
// if (i == 2)
// {
// bodyProperties6 = new A.BodyProperties() { VerticalOverflow = A.TextVerticalOverflowValues.Clip, HorizontalOverflow = A.TextHorizontalOverflowValues.Clip, Wrap = A.TextWrappingValues.Square, RightToLeftColumns = false, Anchor = A.TextAnchoringTypeValues.Bottom };
// }
// else
// {
bodyProperties6 = new A.BodyProperties() { VerticalOverflow = A.TextVerticalOverflowValues.Clip, HorizontalOverflow = A.TextHorizontalOverflowValues.Clip, Wrap = A.TextWrappingValues.Square, RightToLeftColumns = false, Anchor = A.TextAnchoringTypeValues.Top };
// }
A.NoAutoFit noAutoFit6 = new A.NoAutoFit();
bodyProperties6.Append(noAutoFit6);
A.ListStyle listStyle6 = new A.ListStyle();
A.Paragraph paragraph6 = new A.Paragraph();
A.ParagraphProperties paragraphProperties3 = new A.ParagraphProperties() { Alignment = A.TextAlignmentTypeValues.Left };
A.Run run9 = new A.Run();
A.RunProperties runProperties9 = new A.RunProperties() { Language = "en-US", FontSize = 1100, Bold = false, Italic = false, Underline = A.TextUnderlineValues.None, Strike = A.TextStrikeValues.NoStrike };
A.SolidFill solidFill15 = new A.SolidFill();
A.SchemeColor schemeColor30 = new A.SchemeColor() { Val = A.SchemeColorValues.Background1 };
solidFill15.Append(schemeColor30);
A.EffectList effectList7 = new A.EffectList();
A.LatinFont latinFont6 = new A.LatinFont() { Typeface = "+mn-lt" };
A.EastAsianFont eastAsianFont6 = new A.EastAsianFont() { Typeface = "+mn-ea" };
A.ComplexScriptFont complexScriptFont6 = new A.ComplexScriptFont() { Typeface = "+mn-cs" };
runProperties9.Append(solidFill15);
runProperties9.Append(effectList7);
runProperties9.Append(latinFont6);
runProperties9.Append(eastAsianFont6);
runProperties9.Append(complexScriptFont6);
A.Text text9 = new A.Text();
text9.Text = strGenerator[i];
run9.Append(runProperties9);
run9.Append(text9);
A.Run run10 = new A.Run();
A.RunProperties runProperties10 = new A.RunProperties() { Language = "en-US", FontSize = 1200 };
A.SolidFill solidFill16 = new A.SolidFill();
A.SchemeColor schemeColor31 = new A.SchemeColor() { Val = A.SchemeColorValues.Background1 };
solidFill16.Append(schemeColor31);
runProperties10.Append(solidFill16);
A.Text text10 = new A.Text();
text10.Text = "";
run10.Append(runProperties10);
run10.Append(text10);
paragraph6.Append(paragraphProperties3);
paragraph6.Append(run9);
paragraph6.Append(run10);
textBody6.Append(bodyProperties6);
textBody6.Append(listStyle6);
textBody6.Append(paragraph6);
shape6.Append(nonVisualShapeProperties6);
shape6.Append(shapeProperties6);
shape6.Append(shapeStyle6);
shape6.Append(textBody6);
Xdr.ClientData clientData8 = new Xdr.ClientData();
oneCellAnchor6.Append(fromMarker8);
oneCellAnchor6.Append(extent6);
oneCellAnchor6.Append(shape6);
oneCellAnchor6.Append(clientData8);
drawingspart.WorksheetDrawing.Append(oneCellAnchor6);
}