Я добавил объект формы к существующему содержимому рабочего листа Excel, используя Aspose Cells для Java, например так:
Shape shape = worksheet.getShapes().addTextEffect(...);
Теперь я хотел бы отправить форму за текстом, который уже существовал на листе. Я посмотрел, есть метод setZOrderPosition
для объекта Shape
.
Однако он принимает целочисленное значение, и я не могу найти перечисление, магическое число или дозорный, который указывает Отправить на задний план, как у нас была константа msoSendToBack
в объектных моделях VSTO/VBA. .
Кроме того, в их документации нет объяснения значений для этого метода: ">https://apireference.aspose.com/net/cells/aspose.cells.drawing/shape/properties/zorderposition
Итак, как и все другие API рисования, я предполагаю, что значение Z-порядка относится к Z-порядку другого содержимого на листе.
Итак, я попытался указать -1, чтобы обеспечить минимально возможное значение.
shape.setZOrderPosition(-1);
Это выдало IndexOutOfBoundsException
или что-то подобное, из чего я делаю вывод, что допустимые значения для Z-Order отсчитываются от нуля.
Я указал значение 0, надеясь, что оно будет самым низким и будет работать, но оказалось, что это не так.
shape.setZOrderPosition(0);
Фигура по-прежнему перекрывает существующий текст.
Как правильно установить индекс Z-Order для объекта формы, чтобы он находился за текстом?