Modifica i valori di regolazione della forma con Node.js tramite C++
Aspose.Cells fornisce la proprietà Shape.getGeometry() per apportare modifiche ai punti di regolazione con le forme. Nell’interfaccia utente di Microsoft Excel, le regolazioni vengono visualizzate come nodi a diamante giallo. Ad esempio:
- Il rettangolo arrotondato ha una regolazione per cambiare l’arco
- Il triangolo ha una regolazione per cambiare la posizione del punto
- Il trapezio ha un’aggiustamento per cambiare la larghezza del lato superiore
- Le frecce hanno due ajustamenti per cambiare la forma della testa e della coda
Questo articolo spiegherà l’uso della proprietà Shape.getGeometry() per cambiare il valore di regolazione delle diverse forme.
Modifica i valori di regolazione
Il seguente esempio di codice mostra come cambiare i valori di regolazione della forma.
const path = require("path");
const AsposeCells = require("aspose.cells.node");
// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
// Create workbook object from source excel file
const workbook = new AsposeCells.Workbook(path.join(dataDir, "source_shapes.xlsx"));
// Access first worksheet
const worksheet = workbook.getWorksheets().get(0);
// Access first three shapes of the worksheet
const shape1 = worksheet.getShapes().get(0);
const shape2 = worksheet.getShapes().get(1);
const 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(path.join(dataDir, "output_out.xlsx"));
Come impostare o modificare il punto di puntamento del callout di forma arrotondata in Excel
Il seguente esempio di codice mostra come impostare o modificare la posizione del punto di puntamento di un callout di rettangolo arrotondato in Excel.
const path = require("path");
const AsposeCells = require("aspose.cells.node");
// The path to the documents directory.
const dataDir = path.join(__dirname, "data");
const filePath = dataDir + "/"; // Ensure you define filePath
// Create a new workbook
let workbook = new AsposeCells.Workbook();
let sheet = workbook.getWorksheets().get(0);
// Add a RoundedRectangularCallout to the worksheet
let polygonShape = sheet.getShapes().addAutoShape(AsposeCells.AutoShapeType.RoundedRectangularCallout, 0, 0, 0, 0, 0, 0);
polygonShape.setTop(200); // Shape Top properties
polygonShape.setLeft(500); // Shape Left properties
polygonShape.setWidth(200); // Shape Width
polygonShape.setHeight(100); // Shape Height
let shapeGuides = polygonShape.getGeometry().getShapeAdjustValues();
shapeGuides.add("adj1", 1.02167); // The distance between the tip point and the center point
shapeGuides.add("adj2", -0.295); // The distance between the tip point and the center point
shapeGuides.add("adj3", 0.16667); // Usually the default value
// Save the workbook
workbook.save(path.join(filePath, "res.xlsx"), AsposeCells.SaveFormat.Xlsx);
// Read a new workbook
workbook = new AsposeCells.Workbook(path.join(filePath, "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);
// Save the workbook
workbook.save(path.join(filePath, "res-resave.xlsx"), AsposeCells.SaveFormat.Xlsx);