mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-17 16:50:30 +03:00
Ключи header и footer описывают колонтитул: три слота (left, center, right), общий шрифт и вертикальное выравнивание, признак вывода и страница, с которой печатать. Ключ printSettings — плоский набор параметров печати с именами тегов платформы; порядок компилятор выставляет сам, незнакомый ключ отвергает. Слот устроен как ячейка: ссылка на формат плюс текст. Текст бывает двух видов, и это не текст против шаблона, а обычная строка против форматированной: у форматированной разметка живёт прямо в содержимом (<b>жирный</>, <fontsize 12>, <colorstyle -16>), поэтому она возится как есть. Признак вывода и стартовая страница лежат в формате как <height> и <width>, но читаются только у записи с <height>: палитра дедуплицирована, и колонтитул без своих настроек ссылается на чужую запись, где <width> — ширина колонки (637 таких ссылок против 153 своих). Перенос строки внутри текста колонтитула платформа хранит голым LF при CRLF во всём остальном файле — единственное такое место в документе, поэтому содержимое пишется одной строкой вывода. Формат колонтитула регистрируется до отсева неиспользуемых шрифтов: иначе шрифт, на который ссылается только колонтитул, выбрасывался бы из палитры. Стенд Колонтитулы собирается байт в байт обоими портами и добавлен в платформенные фикстуры. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
14 lines
615 B
JSON
14 lines
615 B
JSON
{
|
|
"name": "Раундтрип макета ПЛАТФОРМЫ байт в байт: Колонтитулы",
|
|
"setup": "fixture:platform-roundtrip",
|
|
"preRun": [
|
|
{ "script": "mxl-decompile/scripts/mxl-decompile",
|
|
"args": { "-TemplatePath": "Колонтитулы.xml", "-OutputPath": "back.json" },
|
|
"cwd": "{workDir}" }
|
|
],
|
|
"params": { "outputPath": "out.xml" },
|
|
"noSnapshot": "эталон — файл платформы, сверяется expect.filesEqual",
|
|
"expect": { "filesEqual": { "actual": "out.xml", "expected": "Колонтитулы.xml" } },
|
|
"inputFrom": "back.json"
|
|
}
|