Add Arc Object to PDF file
Contents
[
Hide
]
Add Arc object
Aspose.PDF for C++ supports the feature to add graph objects (for example graph, line, rectangle etc.) to PDF documents. It also offers the feature to fill Arc object with a certain color.
Follow the steps below:
-
Create Document instance
-
Create Drawing object with certain dimensions
-
Set Border for Drawing object
-
Add Graph object to paragraphs collection of page
-
Save our PDF file
The following code snippet shows how to add a Arc object.
void ExampleArc() {
// Create Document instance
String _dataDir("C:\\Samples\\");
// Create Document instance
auto document = MakeObject<Document>();
// Add page to pages collection of PDF file
auto page = document->get_Pages()->Add();
// Create Drawing object with certain dimensions
auto graph = MakeObject<Aspose::Pdf::Drawing::Graph>(400, 400);
// Set border for Drawing object
auto borderInfo = MakeObject<BorderInfo>(BorderSide::All, Color::get_Green());
graph->set_Border(borderInfo);
auto arc1 = MakeObject<Aspose::Pdf::Drawing::Arc>(100, 100, 95, 0, 90);
arc1->get_GraphInfo()->set_Color(Color::get_GreenYellow());
graph->get_Shapes()->Add(arc1);
auto arc2 = MakeObject<Aspose::Pdf::Drawing::Arc>(100, 100, 90, 70, 180);
arc2->get_GraphInfo()->set_Color(Color::get_DarkBlue());
graph->get_Shapes()->Add(arc2);
auto arc3 = MakeObject<Aspose::Pdf::Drawing::Arc>(100, 100, 85, 120, 210);
arc3->get_GraphInfo()->set_Color(Color::get_Red());
graph->get_Shapes()->Add(arc3);
// Add Graph object to paragraphs collection of page
page->get_Paragraphs()->Add(graph);
// Save PDF file
document->Save(_dataDir + u"DrawingArc_out.pdf");
}
Create Filled Arc Object
Next example shows how to add a Arc object that is filled with color and certain dimensions.
void ExampleFilledArc() {
// Create Document instance
String _dataDir("C:\\Samples\\");
// Create Document instance
auto document = MakeObject<Document>();
// Add page to pages collection of PDF file
auto page = document->get_Pages()->Add();
// Create Drawing object with certain dimensions
auto graph = MakeObject<Aspose::Pdf::Drawing::Graph>(400, 400);
// Set border for Drawing object
auto borderInfo = MakeObject<BorderInfo>(BorderSide::All, Color::get_Green());
graph->set_Border(borderInfo);
auto arc = MakeObject<Aspose::Pdf::Drawing::Arc>(100, 100, 95, 0, 90);
arc->get_GraphInfo()->set_FillColor(Color::get_GreenYellow());
graph->get_Shapes()->Add(arc);
auto line = MakeObject<Aspose::Pdf::Drawing::Line>(MakeArray<double>({ 195, 100, 100, 100, 100, 195 }));
line->get_GraphInfo()->set_FillColor(Color::get_GreenYellow());
graph->get_Shapes()->Add(line);
// Add Graph object to paragraphs collection of page
page->get_Paragraphs()->Add(graph);
// Save PDF file
document->Save(_dataDir + u"DrawingArc_out.pdf");
}
Let’s see the result of adding a filled Arс: