diff --git a/.claude/skills/mxl-compile/reference/dsl-spec.md b/.claude/skills/mxl-compile/reference/dsl-spec.md index c178e44a..dab01931 100644 --- a/.claude/skills/mxl-compile/reference/dsl-spec.md +++ b/.claude/skills/mxl-compile/reference/dsl-spec.md @@ -419,8 +419,9 @@ Порядок в списке `drawings` — порядок в документе; кто кого перекрывает, задаёт `zOrder`. -Запись в `pictures` — либо ссылка на библиотеку картинок платформы (`ref`), либо сами данные -в base64 (`data`). Пустая запись `{}` — картинка не задана, такое в макетах встречается. +Запись в `pictures` — либо ссылка (`ref`), либо сами данные в base64 (`data`). Ссылкой +задаются и предопределённая картинка платформы, и общая картинка конфигурации — пишутся они +одинаково, префиксом `v8ui:`. Пустая запись `{}` — картинка не задана, такое в макетах встречается. С данными сочетаются `transparent` и `transparentPixel` — два способа записать прозрачность, исключающие друг друга: `transparent: false` — прозрачного фона нет, `transparentPixel: { "x": …, "y": … }` — прозрачным считается цвет пикселя с этими координатами diff --git a/docs/1c-spreadsheet-spec.md b/docs/1c-spreadsheet-spec.md index 0fce1ddf..7a300f65 100644 --- a/docs/1c-spreadsheet-spec.md +++ b/docs/1c-spreadsheet-spec.md @@ -744,10 +744,18 @@ AARnQUlBAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAA в корпусе встречается `tx="97" ty="83"` при картинке 368×117, то есть Конфигуратор углом не ограничен. -Прозрачность не привязана к тому, где лежит картинка: `t` пишется и у ссылочной записи, причём -ПЕРЕД `ref` — ``. В «Бухгалтерии предприятия» на 8.3.27 таких -записей 67, а `t="false"` стоит у 11 135 картинок; значения `true` у этого атрибута не бывает -ни в одной проверенной конфигурации — включённую прозрачность выражают `tx`/`ty`. +Прозрачность не привязана к тому, где лежит картинка: и `t`, и `tx`/`ty` пишутся у ссылочной +записи тоже, причём ПЕРЕД `ref` — ``, +``. В «Бухгалтерии предприятия» на 8.3.27 +ссылочных записей с `t` 67, а `t="false"` стоит у 11 135 картинок; значения `true` у этого +атрибута не встретилось ни в одной проверенной конфигурации — включённую прозрачность +выражают `tx`/`ty`. + +Сама ссылка не различает, откуда картинка: и предопределённая картинка платформы, и общая +картинка конфигурации записываются одинаково, префиксом `v8ui:`. Проверить, что за ней стоит, +по одному макету нельзя — нужна конфигурация. При загрузке макета платформа ссылку не проверяет: +макет со ссылкой на общую картинку грузится в базу, где такой картинки нет (в отличие +от ссылочных типов у ячейки-поля ввода, которым нужна матч-конфигурация). ## Рисунки diff --git a/docs/mxl-dsl-spec.md b/docs/mxl-dsl-spec.md index 227f3cbc..4a4aeb11 100644 --- a/docs/mxl-dsl-spec.md +++ b/docs/mxl-dsl-spec.md @@ -427,8 +427,9 @@ Порядок в списке `drawings` — порядок в документе; кто кого перекрывает, задаёт `zOrder`. -Запись в `pictures` — либо ссылка на библиотеку картинок платформы (`ref`), либо сами данные -в base64 (`data`). Пустая запись `{}` — картинка не задана, такое в макетах встречается. +Запись в `pictures` — либо ссылка (`ref`), либо сами данные в base64 (`data`). Ссылкой +задаются и предопределённая картинка платформы, и общая картинка конфигурации — пишутся они +одинаково, префиксом `v8ui:`. Пустая запись `{}` — картинка не задана, такое в макетах встречается. С данными сочетаются `transparent` и `transparentPixel` — два способа записать прозрачность, исключающие друг друга: `transparent: false` — прозрачного фона нет, `transparentPixel: { "x": …, "y": … }` — прозрачным считается цвет пикселя с этими координатами diff --git a/tests/skills/cases/mxl-compile/fixtures/platform-roundtrip/Рисунки2.xml b/tests/skills/cases/mxl-compile/fixtures/platform-roundtrip/Рисунки2.xml index d3bd6831..de79a3ae 100644 --- a/tests/skills/cases/mxl-compile/fixtures/platform-roundtrip/Рисунки2.xml +++ b/tests/skills/cases/mxl-compile/fixtures/platform-roundtrip/Рисунки2.xml @@ -230,6 +230,23 @@ 12 3 + + Picture + 13 + 0 + 29 + 0 + 29 + 38 + 2 + 0 + 2 + 38 + false + Stretch + 13 + 4 + true 8 31 @@ -311,4 +328,8 @@ XvkDAGiVKbfel/HTPEnZy6hXpXRVsS9iOcXg0bpv9me2msW0lS42Z/b6zXvrcWBf QnLqhED0yxE0niZMaADTqW9sxdmwLSAWufFtTBMwTdpzfa8u8AsvEH/3qV8i/x95 A0x239DYKjuDAAAAAElFTkSuQmCC + + 3 + + \ No newline at end of file