[]
工作表中重叠形状的顺序由其 z-order位置决定。GcExcel允许用户设置形状的 z-order,以便在创建流程图或业务图等时可以控制形状的位置。
GcExcel API中的zOrder方法可用于在其他形状之前或之后移动指定的形状。它采用ZOrderType枚举作为参数来指定形状相对于其他形状的位置。
可以使用IShape接口的getZOrderPosition方法以z-order检索指定形状的位置。
注意: 如果形状的z-order发生更改,则形状的索引工作表形状集合也会更改。
请参阅下面的示例代码,以添加各种形状、更改它们的z顺序并在工作表中以z-order获取它们的位置。
// Create a new workbook
Workbook workbook = new Workbook();
// Fetch default worksheet
IWorksheet worksheet = workbook.getActiveSheet();
IShapes shapes = worksheet.getShapes();
// Add shapes
IShape rectangle = shapes.addShape(AutoShapeType.Rectangle, 20, 20, 100, 100);
rectangle.getFill().getColor().setRGB(Color.GetBlue());
IShape oval = shapes.addShape(AutoShapeType.Oval, 50, 50, 100, 100);
oval.getFill().getColor().setRGB(Color.GetGreen());
IShape pentagon = shapes.addShape(AutoShapeType.Pentagon, 80, 80, 100, 100);
pentagon.getFill().getColor().setRGB(Color.GetRed());
IShape triangle = shapes.addShape(AutoShapeType.IsoscelesTriangle, 100, 100, 100, 100);
triangle.getFill().getColor().setRGB(Color.GetOrange());
// Set rectangle above oval
rectangle.zOrder(ZOrderType.BringForward);
// Get position of rectangle in z-order
System.out.println("Z-Order rectangle: " + rectangle.getZOrderPosition());
// Set triangle to bottom
triangle.zOrder(ZOrderType.SendToBack);
// Get position of triangle in z-order
System.out.println("Z-Order triangle: " + triangle.getZOrderPosition());
// Save to an excel file
workbook.save("SetShapeZOrder.xlsx");