Структура ячейки используется как для хранения данных конкретных ячеек документа, так и для определения свойств документа в целом, свойств колонки или строки, верхнего и нижнего колонтитулов, свойств внедренных объектов. Структура ячейки имеет следующий вид:
Обязательной является только часть «Заголовок ячейки». Наличие остальных частей определяется при помощи флагов в заголовке ячейки.
Смещение | Длина | Описание |
0 | 4 | Флаги, определяющие, какие свойства ячейки используются. См. ниже. |
4 | 2 | Значение данного свойства зависит от места, где находится ячейка:
|
6 | 2 | Значение данного свойства зависит от места, где находится ячейка:
|
8 | 2 | Номер шрифта в таблице шрифтов. |
10 | 2 | Высота шрифта – двухбайтовое целое число со знаком. Если x – высота шрифта в пунктах, то в ячейку будет записано значение (-x * 4). Это значение получается следующим образом. Рассмотрим, как рекомендуется рассчитывать высоту шрифта в описании функции CreateFont: ![]() Т.е. это размер шрифта в единицах устройства, взятый с минусом – отрицательная величина сигнализирует Windows, что требуется подбор по высоте символов шрифта. Т.к. у 1С на дюйм приходится 288 юнитов, то и вычисления проходят по формуле: |
12 | 1 | Жирность шрифта. Возможные значения:
|
13 | 1 | Курсив. 0 – нормальный шрифт, 1 – курсивный шрифт. |
14 | 1 | Подчеркнутый шрифт. 0 – нормальный шрифт, 1 – подчеркнутый шрифт. |
15 | 1 | Горизонтальной положение:
|
16 | 1 | Вертикальное положение:
|
17 | 1 | Номер узора фона. |
18 | 1 | Для обычных ячеек: стиль рамки слева. Для внедренных объектов: стиль рамки объекта. |
19 | 1 | Для обычных ячеек: стиль рамки сверху. Для внедренных объектов: толщина рамки объекта. Для толщины рамки объекта возможны следующие значения:
|
20 | 1 | Для обычных ячеек: стиль рамки справа. Для внедренных объектов: флаг применения рамки внедренного объекта. 0 – рамка отсутствует, 1 – применяются заданные стиль и толщина рамки при условии, что флаги присутствия стиля и толщины выставлены в поле флагов. |
21 | 1 | Для обычных ячеек: стиль рамки снизу. Для внедренных объектов: флаг вывода объекта на печать. |
22 | 1 | Цвет узора фона. |
23 | 1 | Цвет рамок ячейки. |
24 | 1 | Цвет текста. |
25 | 1 | Цвет фона. |
26 | 1 | «Контроль» – метод обработки текста, не помещающегося в ячейку целиком. Возможные значения:
|
27 | 1 | «Тип» – режим интерпретации текста в ячейке. Допустимые значения:
|
28 | 1 | Флаг, разрешающий редактирование ячейки в режиме «Только просмотр». Флаг «Защита» в интерфейсе 1С наборот. |
29 | 1 | Неизвестно. |
30 | 2 | Флаг поворота текста. Данное поле есть только в случае, если версия формата в заголовке файла равна 7. |
Флаги ячейки определяют, какие свойства ячейки заполнены.
Эти данные присутствуют только если установлен соответствующий флаг в свойствах ячейки (0x00080000). Если они присутствуют, данные записываются в следующем формате: