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

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

Вы можете добавить текст внутри любой формы с помощью 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-.NET
//Load sample Excel file.
Workbook wb = new Workbook(sourceDir + "sampleRotateTextWithShapeInsideWorksheet.xlsx");
//Access first worksheet.
Worksheet ws = wb.Worksheets[0];
//Access cell B4 and add message inside it.
Cell b4 = ws.Cells["B4"];
b4.PutValue("Text is not rotating with shape because RotateTextWithShape is false.");
//Access first shape.
Shape sh = ws.Shapes[0];
//Access shape text alignment.
Aspose.Cells.Drawing.Texts.ShapeTextAlignment shapeTextAlignment = sh.TextBody.TextAlignment;
//Do not rotate text with shape by setting RotateTextWithShape as false.
shapeTextAlignment.RotateTextWithShape = false;
//Save the output Excel file.
wb.Save(outputDir + "outputRotateTextWithShapeInsideWorksheet.xlsx");