Форматирование ячеек
Форматировать ячейку или диапазон ячеек
Если вы хотите отформатировать ячейку или диапазон ячеек, то Aspose.Cells предоставляет класс Style. Вы можете выполнять все форматирование ячейки или диапазона ячеек с использованием этого класса. Некоторые возможности форматирования ячейки или диапазона ячеек с помощью класса IStyle следующие
- Установить цвет заливки ячейки
- Установить перенос текста в ячейке
- Установить границы ячеек, такие как верхняя, левая, нижняя и правая границы, и т. д.
- Установить цвет шрифта, размер шрифта, имя шрифта, зачеркивание, полужирный, курсив, подчеркивание и т. д.
- Установить горизонтальное или вертикальное выравнивание текста вправо, влево, вверх, вниз, по центру и т. д.
Если вы хотите установить стиль одной ячейки, то используйте метод Cell->SetStyle(), а если вы хотите установить стиль диапазона ячеек, то используйте метод Range->ApplyStyle().
Образец кода
В следующем образце кода форматируется ячейка C4 на листе в различных вариантах, а скриншот показывает файл Excel-вывода, сгенерированный по нему для вашего справки.
Aspose::Cells::Startup(); | |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input | |
U16String dirPath(u""); | |
//Path of output | |
U16String outPath(u""); | |
//Path of output excel file | |
U16String outputFormatCellOrRangeOfCells = outPath + "outputFormatCellOrRangeOfCells.xlsx"; | |
//Create a new workbook | |
Workbook wb; | |
//Get first worksheet which is created by default | |
Worksheet ws = wb.GetWorksheets().Get(0); | |
//Access cell C4 by cell name | |
Cell cell = ws.GetCells().Get(u"C4"); | |
//Add some text in cell | |
cell.PutValue((U16String)u"This is sample data."); | |
//Access the cell style | |
Style st = cell.GetStyle(); | |
//Fille the cell color to Yellow | |
st.SetPattern(BackgroundType::Solid); | |
st.SetForegroundColor(Color{ 0xff, 0xff, 0xff, 0 });//Yellow | |
//Set the text to wrapp | |
st.SetIsTextWrapped(true); | |
//Set the left and right border to Red | |
st.SetBorder(BorderType::LeftBorder, CellBorderType::Thick, Color{ 0xff, 0xff, 0, 0 });//Red | |
st.SetBorder(BorderType::RightBorder, CellBorderType::Thick, Color{ 0xff, 0xff, 0, 0 });//Red | |
//Set font color, font size, strike, bold, italic | |
st.GetFont().SetColor(Color{ 0xff, 0, 0, 0xff });//Blue | |
st.GetFont().SetSize(16); | |
st.GetFont().SetStrikeType(TextStrikeType::Single); | |
st.GetFont().SetIsBold(true); | |
st.GetFont().SetIsItalic(true); | |
//Set text horizontal and vertical alignment to center | |
st.SetHorizontalAlignment(TextAlignmentType::Center); | |
st.SetVerticalAlignment(TextAlignmentType::Center); | |
//Set the cell style | |
cell.SetStyle(st); | |
//Set the cell column width and row height | |
ws.GetCells().SetColumnWidth(cell.GetColumn(), 20); | |
ws.GetCells().SetRowHeight(cell.GetRow(), 70); | |
//Save the output excel file | |
wb.Save(outputFormatCellOrRangeOfCells); | |
Aspose::Cells::Cleanup(); |