docs(mxl-compile): прозрачность картинки — подтверждено на стенде

Одна и та же картинка 25×30 вставлена в стенд дважды: без флажка
«прозрачный фон» платформа пишет t="false", с флажком — tx="24" ty="29",
то есть координату правого нижнего пикселя. Два способа записи исключают
друг друга. Стенд с обоими случаями положен в фикстуры.
This commit is contained in:
Nick Shirokov
2026-08-15 20:17:26 +03:00
parent 9285ed00cd
commit ce66b03586
4 changed files with 45 additions and 7 deletions
@@ -421,8 +421,10 @@
Запись в `pictures` — либо ссылка на библиотеку картинок платформы (`ref`), либо сами данные
в base64 (`data`). Пустая запись `{}` — картинка не задана, такое в макетах встречается.
С данными сочетаются `transparent` (прозрачность включена) и `transparentPixel`
(`{ "x": …, "y": … }` — координата пикселя, чей цвет считается прозрачным).
С данными сочетаются `transparent` и `transparentPixel` — два способа записать прозрачность,
исключающие друг друга: `transparent: false` — прозрачного фона нет,
`transparentPixel: { "x": …, "y": … }` — прозрачным считается цвет пикселя с этими координатами
(Конфигуратор по флажку «прозрачный фон» берёт правый нижний пиксель картинки).
Одну запись `pictures` могут использовать несколько рисунков — данные в макете не дублируются.
+7 -3
View File
@@ -735,10 +735,14 @@ AARnQUlBAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAA</picture>
| данные без атрибутов | 9 896 | картинка хранится в макете |
| `<picture/>` | 151 | картинка не задана; ровно по одной такой записи на макет |
| `ref="v8ui:Имя"` | 83 | ссылка на библиотеку картинок платформы |
| `tx`, `ty` при данных | 9 | координата пикселя внутри картинки (проверено: это НЕ её размеры — у `tx=97 ty=83` сама картинка 368×117) |
| `tx`, `ty` при данных | 9 | координата пикселя, чей цвет считается прозрачным |
Атрибут `t` (прозрачность) в корпусе не встречается, но платформа его пишет: `t="false"`
появляется у картинки, вставленной в ячейку.
Прозрачность записана двумя способами, и они исключают друг друга. Снятый флажок «прозрачный
фон» даёт `t="false"`, поставленный — координату пикселя в `tx`/`ty` без атрибута `t`. Проверено
на стенде: одна и та же картинка 25×30 вставлена дважды, без флажка `t="false"`, с флажком
`tx="24" ty="29"` — правый нижний пиксель. Координата именно пиксельная, а не размер картинки:
в корпусе встречается `tx="97" ty="83"` при картинке 368×117, то есть Конфигуратор углом
не ограничен.
## Рисунки
+4 -2
View File
@@ -429,8 +429,10 @@
Запись в `pictures` — либо ссылка на библиотеку картинок платформы (`ref`), либо сами данные
в base64 (`data`). Пустая запись `{}` — картинка не задана, такое в макетах встречается.
С данными сочетаются `transparent` (прозрачность включена) и `transparentPixel`
(`{ "x": …, "y": … }` — координата пикселя, чей цвет считается прозрачным).
С данными сочетаются `transparent` и `transparentPixel` — два способа записать прозрачность,
исключающие друг друга: `transparent: false` — прозрачного фона нет,
`transparentPixel: { "x": …, "y": … }` — прозрачным считается цвет пикселя с этими координатами
(Конфигуратор по флажку «прозрачный фон» берёт правый нижний пиксель картинки).
Одну запись `pictures` могут использовать несколько рисунков — данные в макете не дублируются.
@@ -213,6 +213,23 @@
<pictureSize>Stretch</pictureSize>
<zOrder>11</zOrder>
</drawing>
<drawing>
<drawingType>Picture</drawingType>
<id>12</id>
<formatIndex>0</formatIndex>
<beginRow>26</beginRow>
<beginRowOffset>0</beginRowOffset>
<endRow>27</endRow>
<endRowOffset>36</endRowOffset>
<beginColumn>2</beginColumn>
<beginColumnOffset>0</beginColumnOffset>
<endColumn>2</endColumn>
<endColumnOffset>139</endColumnOffset>
<autoSize>false</autoSize>
<pictureSize>RealSize</pictureSize>
<zOrder>12</zOrder>
<pictureIndex>3</pictureIndex>
</drawing>
<templateMode>true</templateMode>
<defaultFormatIndex>8</defaultFormatIndex>
<height>31</height>
@@ -281,4 +298,17 @@ jIGLGp2zcPefXf1FVPI5GqhCLKfPnm/jMWAIezcVXQzqShQKZlpre6ISffseDQmq
X4/PVKhMiAm7iOi/9zZUtsTHNXkYt701rubgu4WMNEa6Ey9JXzzRCDq1aEIWw56R
eChaPMsURcc41UkqlySJS5IA8AW5c2KJOTY6eAAAAABJRU5ErkJggg==</picture>
</picture>
<picture>
<index>2</index>
<picture tx="24" ty="29">iVBORw0KGgoAAAANSUhEUgAAABkAAAAeCAYAAADZ7LXbAAABjElEQVRIie3UoU8C
URzA8S/uCBogSDBggADh3LzABakWA8W/QAOOCdNRLBT/BSbzAmeQYLYQLEQlPAKM
YxMDBthwYwQJlGM7g07GPHfIvE03funt7X6/z37vd+95LMuycDlW3AaWyBJZIi4i
QsuR04SbSB3RGDJsCOruIQpyBIjIKL+F1LUsqUyOa2M8ZZQgQWVKjA2ds1SKrG4s
hvjW15AmQ6qFc/QPyB9SUUP+d0Bo5Ao1Rkj4NgO2NTzzPvXt+h21SgsSB8Sey1TZ
IRGqUSqDvBtjT4l+mzs38hmGTqZQY4JE7OSSoy3nlB8NftwVCGTkVZB8ChEERnfs
mOfYifnywI1+i+iN8G4nyadVeO3QIUzYDw8XWUotE19QZf/4kLjNWBw7qWglqr0R
XvkDAGiVKbfel/HTPEnZy6hXpXRVsS9iOcXg0bpv9me2msW0lS42Z/b6zXvrcWBf
QnLqhED0yxE0niZMaADTqW9sxdmwLSAWufFtTBMwTdpzfa8u8AsvEH/3qV8i/x95
A0x239DYKjuDAAAAAElFTkSuQmCC</picture>
</picture>
</document>