Данные в не примитивной форме

Доступ к данным не примитивной формы

Иногда вам может потребоваться получить доступ к данным из формы, которая не встроена. Встроенные формы называют примитивными, а те, которых нет, называют не примитивными. Например, вы можете определить свои собственные формы, используя разные кривые соединенные линии.

Форма не примитивной формы

В Aspose.Cells для Python via .NET, непримитивные формы имеют тип AutoShapeType.NOT_PRIMITIVE. Вы можете проверить их тип, используя свойство Shape.auto_shape_type.

Доступ к данным формы с использованием свойства Shape.paths. Оно возвращает все связанные пути, составляющие нетипичную форму. Эти пути имеют тип ShapePath и содержат список всех сегментов, в свою очередь содержащих точки в каждом сегменте.

Показывает пример нетипичной формы
todo:image_alt_text
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))