mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-13 23:13:22 +03:00
Стиль описывал 7 свойств из 47, которые платформа хранит в <format>. Не было
самого частого тега корпуса — backColor (1.7 млн вхождений), а также textColor,
textPlacement, protection, hidden, indent, borderColor, textOrientation и хвоста.
Теперь ключ стиля — имя тега платформы, без исключений: помнить, какие ключи
названы по-своему, больше не нужно. Прежние align/valign/wrap продолжают
работать молча, как синонимы; там же CSS-имена (background, color,
border-bottom) и русские имена свойств. Таблицы типов значений и допустимых
значений перечислений сняты с корпуса, а не выписаны на глаз.
Рамка: пять плоских ключей (border и четыре стороны) со значением
{ style, width } либо строкой стиля; линия регистрируется в палитре <line>,
которая раньше знала только «тонкую» и «толстую» Solid. Четыре одинаковые
стороны сворачиваются в один <border> — правило проверено на корпусе:
70 265 свёрнутых форматов против 36 783 записанных по сторонам, и среди
вторых нет ни одного с четырьмя совпадающими значениями.
Цвет — нотация самой платформы: #RRGGBB, style:Имя, web:Имя, win:Имя. Первые
две пишутся дословно (префикс style объявлен в корне документа), для web и win
платформа дописывает объявление xmlns прямо на узел — делаем так же.
containsValue / valueType / controlType намеренно не заведены: это свойства
конкретной ячейки, а стиль — сущность общая, один на многие ячейки.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
68 lines
2.0 KiB
JSON
68 lines
2.0 KiB
JSON
{
|
|
"name": "Стиль: свойства формата платформенными именами, цвета, посторонние рамки",
|
|
"input": {
|
|
"columns": 4,
|
|
"defaultWidth": 20,
|
|
"fonts": {
|
|
"default": { "face": "Arial", "size": 10 },
|
|
"bold": { "face": "Arial", "size": 10, "bold": true }
|
|
},
|
|
"styles": {
|
|
"шапка": {
|
|
"font": "bold",
|
|
"backColor": "#EBEBEB",
|
|
"textColor": "style:FormTextColor",
|
|
"horizontalAlignment": "Center",
|
|
"verticalAlignment": "Center",
|
|
"textPlacement": "Wrap",
|
|
"protection": true
|
|
},
|
|
"рамка-по-сторонам": {
|
|
"leftBorder": "Dotted",
|
|
"topBorder": { "style": "Solid", "width": 2 },
|
|
"bottomBorder": { "style": "ThinDashed" },
|
|
"borderColor": "#C8C8C8"
|
|
},
|
|
"web-цвет": {
|
|
"backColor": "web:Gainsboro",
|
|
"textColor": "win:ButtonText"
|
|
},
|
|
"скрытая": {
|
|
"hidden": true,
|
|
"indent": 2,
|
|
"textOrientation": 900
|
|
},
|
|
"рамка-вокруг": {
|
|
"leftBorder": "Solid",
|
|
"topBorder": "Solid",
|
|
"rightBorder": "Solid",
|
|
"bottomBorder": "Solid"
|
|
}
|
|
},
|
|
"areas": [
|
|
{
|
|
"name": "Шапка",
|
|
"rows": [
|
|
{ "cells": [
|
|
{ "col": 1, "span": 4, "style": "шапка", "text": "Отчёт о движении" }
|
|
]}
|
|
]
|
|
},
|
|
{
|
|
"name": "Тело",
|
|
"rows": [
|
|
{ "cells": [
|
|
{ "col": 1, "style": "рамка-по-сторонам", "text": "Слева пунктир" },
|
|
{ "col": 2, "style": "web-цвет", "text": "Цвет из палитры" },
|
|
{ "col": 3, "style": "скрытая", "param": "Скрытое" },
|
|
{ "col": 4, "style": "рамка-вокруг", "text": "Рамка свёрнута" }
|
|
]}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"params": { "outputPath": "Template.xml" },
|
|
"validatePath": "Template.xml",
|
|
"expect": { "files": ["Template.xml"] }
|
|
}
|