ملاحظات
Contents
[
Hide
]
استخدام الملاحظات
تمت إضافة خاصية ShowLabelAsDataCallout إلى فئة DataLabelFormat وواجهة IDataLabelFormat، والتي تحدد ما إذا كان سيتم عرض تسمية بيانات الرسم البياني المحدد كملاحظة بيانات أو كتسمية بيانات. في المثال المقدم أدناه، قمنا بتعيين الملاحظات.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C | |
// The path to the documents directory. | |
const String outPath = u"../out/DisplayChartLabels_out.pptx"; | |
//Instantiate Presentation class that represents PPTX file | |
SharedPtr<Presentation> pres = MakeObject<Presentation>(); | |
//Access first slide | |
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0); | |
// Add chart with default data | |
SharedPtr<IChart> chart = slide->get_Shapes()->AddChart(Aspose::Slides::Charts::ChartType::Pie, 0, 0, 500, 500); | |
chart->get_ChartData()->get_Series()->idx_get(0)->get_Labels()->get_DefaultDataLabelFormat()->set_ShowValue ( true); | |
chart->get_ChartData()->get_Series()->idx_get(0)->get_Labels()->get_DefaultDataLabelFormat()->set_ShowLabelAsDataCallout( true); | |
chart->get_ChartData()->get_Series()->idx_get(0)->get_Labels()->idx_get(2)->get_DataLabelFormat()->set_ShowLabelAsDataCallout ( false); | |
// Write the presentation file to disk | |
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx); | |
تعيين ملاحظة لرسم بياني دائري
تقدم Aspose.Slides لـ C++ دعمًا لتعيين شكل ملاحظة تسمية بيانات السلسلة لرسم بياني دائري. تم تقديم مثال عينة أدناه.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C | |
// The path to the documents directory. | |
const String outPath = u"../out/AddDoughnutCallout_out.pptx"; | |
//Instantiate Presentation class that represents PPTX file | |
SharedPtr<Presentation> pres = MakeObject<Presentation>(); | |
//Access first slide | |
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0); | |
// Add chart with default data | |
SharedPtr<IChart> chart = slide->get_Shapes()->AddChart(Aspose::Slides::Charts::ChartType::Doughnut, 0, 0, 500, 500); | |
int seriesIndex = 0; | |
// Setting the index of chart data sheet | |
int defaultWorksheetIndex = 0; | |
// Getting the chart data worksheet | |
SharedPtr<IChartDataWorkbook> fact = chart->get_ChartData()->get_ChartDataWorkbook(); | |
// Delete default generated series and categories | |
chart->get_ChartData()->get_Series()->Clear(); | |
chart->get_ChartData()->get_Categories()->Clear(); | |
chart->set_HasLegend(false); | |
//////////// | |
while (seriesIndex < 15) | |
{ | |
SharedPtr<IChartSeries> series = chart->get_ChartData()->get_Series()->Add(fact->GetCell(0, 0, seriesIndex + 1, ObjectExt::Box<System::String>(u"SERIES" + seriesIndex)), chart->get_Type()); | |
series->set_Explosion(0); | |
series->get_ParentSeriesGroup()->set_DoughnutHoleSize (20); | |
series->get_ParentSeriesGroup()->set_FirstSliceAngle ( 351); | |
seriesIndex++; | |
} | |
int categoryIndex = 0; | |
while (categoryIndex < 15) | |
{ | |
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(0, categoryIndex + 1, 0, ObjectExt::Box<System::String>(u"CATEGORY" + categoryIndex))); | |
int i = 0; | |
while (i < chart->get_ChartData()->get_Series()->get_Count()) | |
{ | |
SharedPtr<IChartSeries> iCS = chart->get_ChartData()->get_Series()->idx_get(i); | |
SharedPtr<IChartDataPoint> dataPoint = iCS->get_DataPoints()->AddDataPointForDoughnutSeries(fact->GetCell(0, categoryIndex + 1, i + 1, ObjectExt::Box<double>(1))); | |
dataPoint->get_Format()->get_Fill()->set_FillType (FillType::Solid); | |
dataPoint->get_Format()->get_Line()->get_FillFormat()->set_FillType(FillType::Solid); | |
dataPoint->get_Format()->get_Line()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_White()); | |
dataPoint->get_Format()->get_Line()->set_Width( 1); | |
dataPoint->get_Format()->get_Line()->set_Style (LineStyle::Single); | |
dataPoint->get_Format()->get_Line()->set_DashStyle(LineDashStyle::Solid); | |
if (i == chart->get_ChartData()->get_Series()->get_Count() - 1) | |
{ | |
SharedPtr<IDataLabel> lbl = dataPoint->get_Label(); | |
lbl->get_TextFormat()->get_TextBlockFormat()->set_AutofitType (TextAutofitType::Shape); | |
lbl->get_DataLabelFormat()->get_TextFormat()->get_PortionFormat()->set_FontBold (NullableBool::True); | |
lbl->get_DataLabelFormat()->get_TextFormat()->get_PortionFormat()->set_LatinFont(MakeObject<FontData>(u"DINPro-Bold")); | |
lbl->get_DataLabelFormat()->get_TextFormat()->get_PortionFormat()->set_FontHeight ( 12); | |
lbl->get_DataLabelFormat()->get_TextFormat()->get_PortionFormat()->get_FillFormat()->set_FillType (FillType::Solid); | |
lbl->get_DataLabelFormat()->get_TextFormat()->get_PortionFormat()->get_FillFormat()->get_SolidFillColor()->set_Color (System::Drawing::Color::get_LightGray()); | |
lbl->get_DataLabelFormat()->get_Format()->get_Line()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_White()); | |
lbl->get_DataLabelFormat()->set_ShowValue ( false); | |
lbl->get_DataLabelFormat()->set_ShowCategoryName ( true); | |
lbl->get_DataLabelFormat()->set_ShowSeriesName(false); | |
//lbl.DataLabelFormat.ShowLabelAsDataCallout = true; | |
lbl->get_DataLabelFormat()->set_ShowLeaderLines (true); | |
lbl->get_DataLabelFormat()->set_ShowLabelAsDataCallout ( false); | |
chart->ValidateChartLayout(); | |
lbl->set_X((float)lbl->get_X() + (float)0.5); | |
lbl->set_Y((float)lbl->get_Y() + (float)0.5); | |
} | |
i++; | |
} | |
categoryIndex++; | |
} | |
// Write the presentation file to disk | |
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx); | |