Änderung der Anpassungswerte der Form mit C++
Contents
[
Hide
]
Aspose.Cells stellt die Eigenschaft Shape.Geometry.GetShapeAdjustValues bereit, um Änderungen an den Anpassungspunkten mit Formen vorzunehmen. In der Microsoft Excel-Benutzeroberfläche werden Anpassungen als gelbe Diamantknoten angezeigt. Zum Beispiel:
- Das abgerundete Rechteck hat eine Anpassung, um den Bogen zu ändern
- Das Dreieck hat eine Anpassung, um die Position des Punktes zu ändern
- Das Trapezoid hat eine Anpassung, um die Breite des oberen Teils zu ändern
- Pfeile haben zwei Anpassungen, um die Form des Kopfes und des Endes zu ändern
In diesem Artikel wird die Verwendung der Eigenschaft Shape.Geometry.GetShapeAdjustValues erklärt, um den Anpassungswert der verschiedenen Formen zu ändern.
Änderung der Anpassungswerte
Im folgenden Codebeispiel wird gezeigt, wie Anpassungswerte der Form geändert werden.
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
// Source directory path
U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
// Output directory path
U16String outDir(u"..\\Data\\02_OutputDirectory\\");
// Create workbook object from source excel file
U16String inputFilePath = srcDir + u"source.xlsx";
Workbook workbook(inputFilePath);
// Access first worksheet
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Access first three shapes of the worksheet
Shape shape1 = worksheet.GetShapes().Get(0);
Shape shape2 = worksheet.GetShapes().Get(1);
Shape shape3 = worksheet.GetShapes().Get(2);
// Change the adjustment values of the shapes
shape1.GetGeometry().GetShapeAdjustValues().Get(0).SetValue(0.5);
shape2.GetGeometry().GetShapeAdjustValues().Get(0).SetValue(0.8);
shape3.GetGeometry().GetShapeAdjustValues().Get(0).SetValue(0.5);
// Save the workbook
workbook.Save(outDir + u"output_out.xlsx");
std::cout << "Workbook saved successfully!" << std::endl;
Aspose::Cells::Cleanup();
}
So setzen oder ändern Sie den Tip-Punkt eines RoundedRectangularCallout in Excel
Das folgende Code-Beispiel zeigt, wie man einen abgerundeten Rechteck-Ausrufpunkt in Excel festlegt oder ändert.
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// File path for saving the workbook
U16String filePath(u"");
// Create a new workbook
Workbook workbook;
Worksheet sheet = workbook.GetWorksheets().Get(0);
// Add a RoundedRectangularCallout to the worksheet
Shape polygonShape = sheet.GetShapes().AddAutoShape(AutoShapeType::RoundedRectangularCallout, 0, 0, 0, 0, 0, 0);
polygonShape.SetY(200); // Shape Top properties
polygonShape.SetX(500); // Shape Left properties
polygonShape.SetWidth(200); // Shape Width
polygonShape.SetHeight(100); // Shape Height
ShapeGuideCollection shapeGuides = polygonShape.GetGeometry().GetShapeAdjustValues();
shapeGuides.Add(u"adj1", 1.02167); // The distance between the tip point and the center point
shapeGuides.Add(u"adj2", -0.295); // The distance between the tip point and the center point
shapeGuides.Add(u"adj3", 0.16667); // Usually the default value
// Save the workbook
workbook.Save(filePath + u"res.xlsx", SaveFormat::Xlsx);
// Read a new workbook
workbook = Workbook(filePath + u"res.xlsx");
sheet = workbook.GetWorksheets().Get(0);
// Get a RoundedRectangularCallout from the worksheet
polygonShape = sheet.GetShapes().Get(0);
shapeGuides = polygonShape.GetGeometry().GetShapeAdjustValues();
shapeGuides.Get(0).SetValue(0.7); // Modify the first shape guide value
// Save the workbook again
workbook.Save(filePath + u"res-resave.xlsx", SaveFormat::Xlsx);
Aspose::Cells::Cleanup();
}