Настройки границ
Добавление границ в ячейки
Microsoft Excel позволяет пользователям форматировать ячейки, добавляя границы. Тип границы зависит от того, куда она добавляется. Например, верхняя граница - это граница, добавленная в верхнюю часть ячейки. Пользователи также могут изменять стиль и цвет линий границ.
С Aspose.Cells для Python via .NET разработчики могут добавлять границы и настраивать их внешний вид так же гибко, как в Microsoft Excel.
Добавление границ в ячейки
Aspose.Cells для Python via .NET предоставляет класс Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию worksheets, позволяющую получать доступ к каждому листу в файле Excel. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells. Каждый элемент коллекции Cells представляет объект класса Cell.
Aspose.Cells для Python via .NET предоставляет метод get_style в классе Cell. Метод set_style используется для установки параметров форматирования ячейки. Класс Style предоставляет свойства для добавления границ к ячейкам.
Добавление границ к ячейке
Разработчики могут добавлять границы к ячейке, используя коллекцию Style объекта borders. Тип границы передается в качестве индекса коллекции borders. Все типы границ предварительно определены в перечислении BorderType.
Перечисление границ
Типы границ | Описание |
---|---|
BOTTOM_BORDER | Линия нижней границы |
DIAGONAL_DOWN | Диагональная линия сверху слева вниз направо |
DIAGONAL_UP | Диагональная линия снизу слева вверх направо |
LEFT_BORDER | Линия левой границы |
RIGHT_BORDER | Линия правой границы |
TOP_BORDER | Линия верхней границы |
The borders collection stores all borders. Each border in the Borders collection is represented by a Border object which provides two properties, color and line_style to set a border’s line color and style respectively.
Установка цвета линии границы осуществляется путем выбора цвета с использованием перечисления Color (часть .NET Framework) и присваивания его свойству Color объекта Border.
Стиль линии границы устанавливается путем выбора стиля линии из перечисления CellBorderType.
Перечисление типов границ ячейки
Стили линий | Описание |
---|---|
DASH_DOT | Тонкая пунктирно-точечная линия |
DASH_DOT_DOT | Тонкая двойная пунктирно-точечная линия |
DASHED | Пунктирная линия |
DOTTED | Точечная линия |
DOUBLE | Двойная линия |
HAIR | Линия тонкая как нить |
MEDIUM_DASH_DOT | Средняя пунктирно-точечная линия |
MEDIUM_DASH_DOT_DOT | Средняя двойная пунктирно-точечная линия |
MEDIUM_DASHED | Средняя пунктирная линия |
NONE | Нет линии |
MEDIUM | Средняя линия |
SLANTED_DASH_DOT | Наклонная пунктирная линия |
THICK | Толстая линия |
THIN | Тонкая линия |
Выберите один из стилей линий и затем назначьте его для свойства объекта line_style Border. |
from aspose.cells import BorderType, CellBorderType, Workbook | |
from aspose.pydrawing import Color | |
from os import os, path | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Obtaining the reference of the first (default) worksheet by passing its sheet index | |
worksheet = workbook.worksheets[0] | |
# Accessing the "A1" cell from the worksheet | |
cell = worksheet.cells.get("A1") | |
# Adding some value to the "A1" cell | |
cell.put_value("Visit Aspose!") | |
# Create a style object | |
style = cell.get_style() | |
# Setting the line style of the top border | |
style.borders.get(BorderType.TOP_BORDER).line_style = CellBorderType.THICK | |
# Setting the color of the top border | |
style.borders.get(BorderType.TOP_BORDER).color = Color.black | |
# Setting the line style of the bottom border | |
style.borders.get(BorderType.BOTTOM_BORDER).line_style = CellBorderType.THICK | |
# Setting the color of the bottom border | |
style.borders.get(BorderType.BOTTOM_BORDER).color = Color.black | |
# Setting the line style of the left border | |
style.borders.get(BorderType.LEFT_BORDER).line_style = CellBorderType.THICK | |
# Setting the color of the left border | |
style.borders.get(BorderType.LEFT_BORDER).color = Color.black | |
# Setting the line style of the right border | |
style.borders.get(BorderType.RIGHT_BORDER).line_style = CellBorderType.THICK | |
# Setting the color of the right border | |
style.borders.get(BorderType.RIGHT_BORDER).color = Color.black | |
# Apply the border styles to the cell | |
cell.set_style(style) | |
# Saving the Excel file | |
workbook.save(dataDir + "book1.out.xls") |
Добавление границ для диапазона ячеек
Также есть возможность добавить границы для диапазона ячеек, а не только для одной ячейки. Для этого сначала создайте диапазон ячеек, вызвав метод create_range коллекции Cells. Он принимает следующие параметры:
- Первая строка, первая строка диапазона.
- Первый столбец, представляет первый столбец диапазона.
- Количество строк, количество строк в диапазоне.
- Количество столбцов, количество столбцов в диапазоне.
Метод create_range возвращает объект Range, который содержит указанный диапазон ячеек. Объект Range предоставляет метод set_outline_border, который принимает следующие параметры для добавления границы к диапазону ячеек:
- Тип границы, тип границы, выбранный из перечисления BorderType.
- Стиль линии, стиль линии границы, выбранный из перечисления CellBorderType.
- Цвет, цвет линии, выбранный из перечисления Color.
from aspose.cells import BorderType, CellBorderType, Workbook | |
from aspose.pydrawing import Color | |
from os import os, path | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Obtaining the reference of the first (default) worksheet by passing its sheet index | |
worksheet = workbook.worksheets[0] | |
# Accessing the "A1" cell from the worksheet | |
cell = worksheet.cells.get("A1") | |
# Adding some value to the "A1" cell | |
cell.put_value("Hello World From Aspose") | |
# Creating a range of cells starting from "A1" cell to 3rd column in a row | |
range = worksheet.cells.create_range(0, 0, 1, 3) | |
# Adding a thick top border with blue line | |
range.set_outline_border(BorderType.TOP_BORDER, CellBorderType.THICK, Color.blue) | |
# Adding a thick bottom border with blue line | |
range.set_outline_border(BorderType.BOTTOM_BORDER, CellBorderType.THICK, Color.blue) | |
# Adding a thick left border with blue line | |
range.set_outline_border(BorderType.LEFT_BORDER, CellBorderType.THICK, Color.blue) | |
# Adding a thick right border with blue line | |
range.set_outline_border(BorderType.RIGHT_BORDER, CellBorderType.THICK, Color.blue) | |
# Saving the Excel file | |
workbook.save(dataDir + "book1.out.xls") |