Настройки границ
Добавление границ в ячейки
Microsoft Excel позволяет пользователям форматировать ячейки, добавляя границы. Тип границы зависит от того, куда она добавляется. Например, верхняя граница - это граница, добавленная в верхнюю часть ячейки. Пользователи также могут изменять стиль и цвет линий границ.
С помощью Aspose.Cells разработчики могут добавлять границы и настраивать их внешний вид таким же гибким способом, как в Microsoft Excel.
Добавление границ в ячейки
Aspose.Cells предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию Worksheets, которая позволяет получить доступ к каждому листу в файле Excel. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells. Каждый элемент в коллекции Cells представляет объект класса Cell.
Aspose.Cells предоставляет метод GetStyle в классе Cell. Метод SetStyle используется для установки стиля форматирования ячейки. Класс Style предоставляет свойства для добавления границ к ячейкам.
Добавление границ к ячейке
Разработчики могут добавлять границы к ячейке, используя коллекцию Style объекта Borders. Тип границы передается в качестве индекса коллекции Borders. Все типы границ предварительно определены в перечислении BorderType.
Перечисление границ
Типы границ | Описание |
---|---|
BottomBorder | Линия нижней границы |
DiagonalDown | Диагональная линия от верхнего левого до нижнего правого |
DiagonalUp | Диагональная линия от нижнего левого до верхнего правого |
LeftBorder | Линия левой границы |
RightBorder | Линия правой границы |
TopBorder | Линия верхней границы |
The Borders collection stores all borders. Each border in the Borders collection is represented by a Border object which provides two properties, Color and LineStyle to set a border’s line color and style respectively.
Установка цвета линии границы осуществляется путем выбора цвета с использованием перечисления Color (часть .NET Framework) и присваивания его свойству Color объекта Border.
Стиль линии границы устанавливается путем выбора стиля линии из перечисления CellBorderType.
Перечисление типов границ ячейки
Стили линий | Описание |
---|---|
DashDot | Тонкая пунктирная линия |
DashDotDot | Тонкая штрих-пунктирная линия |
Dashed | Пунктирная линия |
Dotted | Точечная линия |
Double | Двойная линия |
Hair | Линия минимальной толщины |
MediumDashDot | Средняя штрих-пунктирная линия |
MediumDashDotDot | Средняя штрих-точечно-пунктирная линия |
MediumDashed | Средняя пунктирная линия |
None | Нет линии |
Medium | Средняя линия |
SlantedDashDot | Наклоненная средняя штрих-пунктирная линия |
Thick | Толстая линия |
Thin | Тонкая линия |
Выберите один из стилей линий и затем назначьте его для свойства объекта LineStyle Border. |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the first (default) worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Accessing the "A1" cell from the worksheet | |
Aspose.Cells.Cell cell = worksheet.Cells["A1"]; | |
// Adding some value to the "A1" cell | |
cell.PutValue("Visit Aspose!"); | |
// Create a style object | |
Style style = cell.GetStyle(); | |
// Setting the line style of the top border | |
style.Borders[BorderType.TopBorder].LineStyle = CellBorderType.Thick; | |
// Setting the color of the top border | |
style.Borders[BorderType.TopBorder].Color = Color.Black; | |
// Setting the line style of the bottom border | |
style.Borders[BorderType.BottomBorder].LineStyle = CellBorderType.Thick; | |
// Setting the color of the bottom border | |
style.Borders[BorderType.BottomBorder].Color = Color.Black; | |
// Setting the line style of the left border | |
style.Borders[BorderType.LeftBorder].LineStyle = CellBorderType.Thick; | |
// Setting the color of the left border | |
style.Borders[BorderType.LeftBorder].Color = Color.Black; | |
// Setting the line style of the right border | |
style.Borders[BorderType.RightBorder].LineStyle = CellBorderType.Thick; | |
// Setting the color of the right border | |
style.Borders[BorderType.RightBorder].Color = Color.Black; | |
// Apply the border styles to the cell | |
cell.SetStyle(style); | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Добавление границ для диапазона ячеек
Также есть возможность добавить границы для диапазона ячеек, а не только для одной ячейки. Для этого сначала создайте диапазон ячеек, вызвав метод CreateRange коллекции Cells. Он принимает следующие параметры:
- Первая строка, первая строка диапазона.
- Первый столбец, представляет первый столбец диапазона.
- Количество строк, количество строк в диапазоне.
- Количество столбцов, количество столбцов в диапазоне.
Метод CreateRange возвращает объект Range, который содержит указанный диапазон ячеек. Объект Range предоставляет метод SetOutlineBorder, который принимает следующие параметры для добавления границы к диапазону ячеек:
- Тип границы, тип границы, выбранный из перечисления BorderType.
- Стиль линии, стиль линии границы, выбранный из перечисления CellBorderType.
- Цвет, цвет линии, выбранный из перечисления Color.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the first (default) worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Accessing the "A1" cell from the worksheet | |
Cell cell = worksheet.Cells["A1"]; | |
// Adding some value to the "A1" cell | |
cell.PutValue("Hello World From Aspose"); | |
// Creating a range of cells starting from "A1" cell to 3rd column in a row | |
Range range = worksheet.Cells.CreateRange(0, 0, 1, 3); | |
// Adding a thick top border with blue line | |
range.SetOutlineBorder(BorderType.TopBorder, CellBorderType.Thick, Color.Blue); | |
// Adding a thick bottom border with blue line | |
range.SetOutlineBorder(BorderType.BottomBorder, CellBorderType.Thick, Color.Blue); | |
// Adding a thick left border with blue line | |
range.SetOutlineBorder(BorderType.LeftBorder, CellBorderType.Thick, Color.Blue); | |
// Adding a thick right border with blue line | |
range.SetOutlineBorder(BorderType.RightBorder, CellBorderType.Thick, Color.Blue); | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |