# Рисунки и картинки Рисунок — объект поверх сетки ячеек: картинка, фигура или надпись. Его положение задают два якоря: ячейка плюс смещение в точках от её левого верхнего угла. ```json "pictures": { "знак": { "ref": "v8ui:Стоп48" }, "логотип": { "data": "iVBORw0KGgo...", "transparent": { "x": 24, "y": 29 } } }, "drawings": [ { "type": "Picture", "picture": "логотип", "name": "Логотип", "begin": { "row": 1, "col": 1 }, "end": { "row": 3, "col": 2, "dy": 34, "dx": 115 }, "pictureSize": "Proportionally", "detail": "ПараметрРасшифровки" }, { "type": "Rectangle", "style": "заливка", "line": { "style": "Dashed", "width": 2 }, "sides": { "left": true, "top": true, "right": false, "bottom": false }, "begin": { "row": 5, "col": 1 }, "end": { "row": 6, "col": 3 } }, { "type": "Text", "text": { "ru": "Подпись", "en": "Signature" }, "begin": { "row": 8, "col": 1 }, "end": { "row": 8, "col": 3, "dy": 12 } } ] ``` | Поле | Обяз. | По умолч. | Описание | |------|:-----:|-----------|----------| | `type` | нет | `Picture` | `Picture`, `Rectangle`, `Ellipse`, `Line`, `Text`, `Chart`, `GanttChart` | | `begin` / `end` | да | — | Якоря: `row`, `col` (1-based) и смещения `dy`, `dx` в точках | | `picture` | нет | — | Имя записи из `pictures` | | `pictureSize` | нет | `Stretch` | Как картинка заполняет прямоугольник: `Stretch`, `AutoSize`, `Proportionally`, `RealSize` | | `text` | нет | — | Надпись: строка или объект «язык → текст» | | `name` | нет | — | Имя рисунка, по которому к нему обращаются из кода | | `detail` | нет | — | Параметр расшифровки | | `style` | нет | — | Именованный стиль: заливка, шрифт, выравнивание надписи | | `line` | нет | — | Линия рисунка (она же его рамка) — как `border` у ячейки | | `sides` | нет | — | Какие стороны рамки видны: `left`, `top`, `right`, `bottom` | | `id` | нет | номер по порядку | Идентификатор рисунка | | `zOrder` | нет | номер по порядку | Порядок перекрытия: чем больше, тем выше | Порядок в списке `drawings` — порядок в документе; кто кого перекрывает, задаёт `zOrder`. Запись в `pictures` — либо ссылка (`ref`), либо сами данные в base64 (`data`). Ссылкой задаются и предопределённая картинка платформы, и общая картинка конфигурации — пишутся они одинаково, префиксом `v8ui:`. Пустая запись `{}` — картинка не задана, такое в макетах встречается. Прозрачность задаётся ключом `transparent` в одной из двух форм: `false` — прозрачного фона нет; `{ "x": …, "y": … }` — прозрачным считается цвет пикселя с этими координатами внутри картинки (по флажку «прозрачный фон» Конфигуратор берёт её правый нижний пиксель). Одну запись `pictures` могут использовать несколько рисунков — данные в макете не дублируются. ## Картинка в ячейке Картинка бывает не только поверх сетки, но и внутри ячейки — тогда её задаёт стиль, а сама картинка берётся из той же палитры `pictures`: ```json { "columns": 2, "pictures": { "стоп": { "ref": "v8ui:Стоп48" } }, "styles": { "значок": { "picIndex": 1, "picHorizontalAlignment": "Center", "picVerticalAlignment": "Center", "textPosition": "Bottom" } }, "areas": [{ "rows": [ [{ "style": "значок", "text": "удалить", "pictureParameter": "Удалить" }] ]}] } ``` - `picIndex` — номер записи в `pictures`, считая с единицы в порядке объявления; - `picHorizontalAlignment`, `picVerticalAlignment`, `pictureSizeMode`, `textPosition` — как картинка стоит в ячейке и где относительно неё текст (значения — в `style-properties.md`); - `pictureParameter` — ключ самой ЯЧЕЙКИ, а не стиля: имя параметра, которым картинку подставляют из кода, как `param` подставляет текст. С текстом ячейки уживается.