Изменение выравнивания ячеек и сохранение существующего форматирования
Возможные сценарии использования
Иногда вы хотите изменить выравнивание нескольких ячеек, сохраняя существующее форматирование. Aspose.Cells позволяет сделать это, используя свойство StyleFlag.Alignments. Если вы установите его true, изменения в выравнивании произойдут, в противном случае - нет. Обратите внимание, что объект StyleFlag передается в качестве параметра в метод Range.applyStyle(), который фактически применяет форматирование к диапазону ячеек.
Изменение выравнивания ячеек и сохранение существующего форматирования
Следующий образец кода загружает образец файла Excel, создает диапазон и центрирует его по горизонтали и вертикали, сохраняя при этом существующее форматирование. На следующем скриншоте сравниваются образец файла Excel и выходной файл Excel, и показано, что все существующее форматирование ячеек остается таким же, за исключением того, что ячейки теперь центрированы по горизонтали и вертикали.
Образец кода
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load sample Excel file containing cells with formatting. | |
Workbook wb = new Workbook(srcDir + "sampleChangeCellsAlignmentAndKeepExistingFormatting.xlsx"); | |
// Access first worksheet. | |
Worksheet ws = wb.getWorksheets().get(0); | |
// Create cells range. | |
Range rng = ws.getCells().createRange("B2:D7"); | |
// Create style object. | |
Style st = wb.createStyle(); | |
// Set the horizontal and vertical alignment to center. | |
st.setHorizontalAlignment(TextAlignmentType.CENTER); | |
st.setVerticalAlignment(TextAlignmentType.CENTER); | |
// Create style flag object. | |
StyleFlag flag = new StyleFlag(); | |
// Set style flag alignments true. It is most crucial statement. | |
// Because if it will be false, no changes will take place. | |
flag.setAlignments(true); | |
// Apply style to range of cells. | |
rng.applyStyle(st, flag); | |
// Save the workbook in XLSX format. | |
wb.save(outDir + "outputChangeCellsAlignmentAndKeepExistingFormatting.xlsx", SaveFormat.XLSX); |