Повернуть текст с фигурой внутри таблицы

Возможные сценарии использования

Вы можете добавить текст в любую форму с помощью Microsoft Excel. Если вы добавляете форму с помощью очень старой версии Microsoft Excel 2003, то текст не будет вращаться вместе с формой. Но если добавляете форму, используя более новые версии Microsoft Excel, например 2007, 2010, 2013 или 2016, и т. д., то текст будет вращаться вместе с формой. Вы можете управлять тем, должен ли текст вращаться вместе с формой или нет, используя свойство ShapeTextAlignment.RotateTextWithShape. Значение по умолчанию - true, что означает, что текст будет вращаться вместе с формой, но если вы установите его как false, то текст не будет вращаться вместе с формой.

Повернуть текст с фигурой внутри таблицы

Приведенный ниже образец кода загружает примерный файл Excel, в котором есть фигура треугольника, и ее текст вращается вместе с формой. Если вы откроете примерный файл Excel в Microsoft Excel и повернете форму треугольника, текст также повернется вместе с ней. Затем код устанавливает свойство ShapeTextAlignment.RotateTextWithShape как false и сохраняет его как выходной файл Excel. Если теперь откроете выходной файл Excel в Microsoft Excel и повернете форму треугольника, текст не повернется вместе с ней. Пожалуйста, посмотрите следующий скриншот, показывающий эффект кода на примерном файле Excel в качестве ссылки.

todo:image_alt_text

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Load sample Excel file.
Workbook wb = new Workbook(srcDir + "sampleRotateTextWithShapeInsideWorksheet.xlsx");
//Access first worksheet.
Worksheet ws = wb.getWorksheets().get(0);
//Access cell B4 and add message inside it.
Cell b4 = ws.getCells().get("B4");
b4.putValue("Text is not rotating with shape because RotateTextWithShape is false.");
//Access first shape.
Shape sh = ws.getShapes().get(0);
//Access shape text alignment.
ShapeTextAlignment shapeTextAlignment = sh.getTextBody().getTextAlignment();
//Do not rotate text with shape by setting RotateTextWithShape as false.
shapeTextAlignment.setRotateTextWithShape(false);
//Save the output Excel file.
wb.save(outDir + "outputRotateTextWithShapeInsideWorksheet.xlsx");