Данные в не примитивной форме
Доступ к данным не примитивной формы
Иногда вам может потребоваться получить доступ к данным из формы, которая не встроена. Встроенные формы называют примитивными, а те, которых нет, называют не примитивными. Например, вы можете определить свои собственные формы, используя разные кривые соединенные линии.
Форма не примитивной формы
В Aspose.Cells для Python via .NET, непримитивные формы имеют тип AutoShapeType.NOT_PRIMITIVE. Вы можете проверить их тип, используя свойство Shape.auto_shape_type.
Доступ к данным формы с использованием свойства Shape.paths. Оно возвращает все связанные пути, составляющие нетипичную форму. Эти пути имеют тип ShapePath и содержат список всех сегментов, в свою очередь содержащих точки в каждом сегменте.
Показывает пример нетипичной формы |
---|
![]() |
from aspose.cells import Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
workbook = Workbook(dataDir + "NonPrimitiveShape.xlsx") | |
worksheet = workbook.worksheets[0] | |
# Accessing the user defined shape | |
shape = worksheet.shapes[0] | |
if shape.auto_shape_type == AutoShapeType.NOT_PRIMITIVE: | |
# Access shape's data | |
shapePathCollection = shape.paths | |
# Access information of indvidual path | |
for shapePath in shapePathCollection: | |
# Access path segment list | |
pathSegments = shapePath.path_segement_list | |
# Access individual path segment | |
for pathSegment in pathSegments: | |
# Gets the points in path segment | |
segmentPoints = pathSegment.points | |
for pathPoint in segmentPoints: | |
print("X: " + str(pathPoint.x) + ", Y: " + str(pathPoint.y)) |