openpencil/packages/docs/ru/reference/figma-compatibility.md
Danila Poyarkov c3412a44fc
docs: polish localized documentation
* docs: polish localized documentation

- Rewrite Russian documentation for natural terminology and current source parity\n- Continue the Polish editorial pass across guides and SDK references\n- Refresh shared localized SDK API data imports

* docs(pl): complete editorial pass

- Rewrite the remaining advanced Vue SDK references\n- Refresh the Figma compatibility matrix against the canonical source\n- Align terminology and behavior across every Polish documentation page

* docs(de): complete editorial pass

- Rewrite German guides, automation docs, and Vue SDK references\n- Restore current AI, export, component, and variable behavior\n- Refresh the Penpot comparison and Figma compatibility matrix

* docs(es): complete editorial pass

- Rewrite Spanish guides, automation docs, and Vue SDK references\n- Restore current AI, export, component, and variable behavior\n- Refresh the Penpot comparison and Figma compatibility matrix

* docs(fr): complete editorial pass

- Rewrite French guides, automation docs, and Vue SDK references\n- Restore current AI, export, component, and variable behavior\n- Refresh the Penpot comparison and Figma compatibility matrix

* docs: correct localized terminology

- Replace unnecessary English prose with natural localized terminology\n- Derive documentation aliases from named directory roots\n- Preserve English only for identifiers, APIs, and exact product terms

* docs(it): continue editorial pass

- Rewrite Italian user guides and automation documentation\n- Update Vue SDK composables and component references\n- Restore current AI, export, component, and variable behavior

* docs(it): complete editorial pass

- Finish Italian advanced SDK and reference documentation\n- Refresh the Penpot comparison and Figma compatibility matrix\n- Replace literal machine translations with natural technical prose

* docs(pl): refine property panel terminology

* docs: refine remaining localized prose

- Replace overfitted English prose in Polish feature documentation\n- Rewrite the Russian property-list reference in natural terminology

* docs(ru): rewrite Penpot comparison naturally

- Replace remaining English prose with natural Russian\n- Preserve code identifiers and library names only where required

* docs: rewrite localized feature overviews naturally

- Replace avoidable English prose in German, Spanish, and French\n- Keep identifiers and product names unchanged

* docs(de): refine property panel terminology

* docs: refine Spanish and French SDK terminology

* docs(ru): continue full prose audit

- Rewrite homepage, setup, navigation, and guide index naturally\n- Restore missing zoom shortcuts

* docs(ru): audit user and automation guides

- Rewrite selection, collaboration, and automation prose naturally\n- Preserve API identifiers while localizing ordinary terminology

* docs(ru): audit CLI inspection and analysis

* docs(ru): audit Vue SDK overview and guides

* docs(ru): audit Vue SDK API prose

- Localize ordinary component and composable terminology\n- Preserve API symbols and code identifiers

* docs(ru): audit advanced and gradient API references

* docs(ru): finish advanced API prose audit

* docs(ru): audit JSX renderer guide

* docs(ru): audit CLI export and scripting guides

* docs(pl): audit Penpot comparison prose

* docs(pl): audit selection and automation guides

* docs(pl): audit homepage and variable guides

* docs(pl): audit vector, layers, and Pen guides

* docs(pl): audit Auto layout and shape guides

* docs(pl): audit context menu and export guides

* docs(pl): audit JSX and analysis guides

* docs(pl): audit AI Chat guide

* docs(pl): audit components and CLI inspection

* docs(pl): audit scripting and SDK overview prose

* docs(pl): audit SDK API indexes

* docs(pl): audit SDK component references

* docs(pl): audit SDK composable references

* docs(ru): refine usePosition terminology

* docs(pl): audit advanced SDK references

* docs(pl): audit Figma compatibility matrix

* docs(pl): finish residual SDK terminology audit

* docs(pl): finish component terminology audit

* docs(pl): finish SDK guide terminology audit

* docs(de): begin full user guide prose audit

* docs(de): audit navigation, Pen, and layers guides

* docs(de): audit Auto Layout, shapes, menu, and export

* docs(de): audit components, text, and vector guides

* docs(de): audit variables and automation overview

* docs(de): audit AI Chat and collaboration guides

* docs(de): audit CLI inspection, analysis, and export

* docs(de): audit scripting and JSX guides

* docs(de): audit Vue SDK overview and guides

* docs(de): audit SDK API indexes

* docs(de): audit SDK component references

* docs(de): audit SDK composable references

* docs(de): audit advanced SDK references

* docs(de): audit Penpot comparison prose

* docs(de): audit Figma compatibility reference

* docs(es): begin full user guide prose audit

* docs(es): audit document organization guides

* docs(es): audit editing workflow guides

* docs(es): audit automation and collaboration prose

* docs(es): audit CLI inspection and export guides

* docs(es): audit CLI scripting guide

* docs(es): audit JSX and feature overview prose

* docs(es): audit Penpot comparison prose

* docs(es): audit SDK overview and guides

* docs(es): begin SDK component reference audit

* docs(es): audit SDK navigation component references

* docs(es): audit SDK color and layout components

* docs(es): begin SDK composable reference audit

* docs(es): audit SDK property composable references

* docs(es): audit SDK editor composable references

* docs(es): begin advanced SDK reference audit

* docs(es): audit advanced SDK state references

* docs(es): complete advanced SDK reference audit

* docs(es): audit Figma compatibility reference

* docs(es): complete residual terminology sweep

* docs(fr): begin full prose second audit

* docs(fr): audit AI and variables prose

* docs(fr): audit core user guide prose

* docs(fr): audit editing workflow guides

* docs(fr): audit CLI and JSX prose

* docs(fr): audit Penpot comparison prose

* docs(fr): audit SDK overview and guides

* docs(fr): begin SDK API reference audit

* docs(fr): audit SDK navigation component references

* docs(fr): audit SDK color and layout components

* docs(fr): begin SDK composable reference audit

* docs(fr): audit SDK property composable references

* docs(fr): audit editor composables and advanced APIs

* docs(fr): audit advanced SDK state references

* docs(fr): complete advanced SDK reference audit

* docs(fr): audit Figma compatibility reference

* docs(fr): complete residual terminology sweep

* docs(it): begin full prose second audit

* docs(it): audit document workflow guides

* docs(it): audit editing and automation prose

* docs(it): audit CLI and JSX prose

* docs(it): audit Penpot comparison and SDK guides

* docs(it): begin SDK API reference audit

* docs(it): audit SDK component and state references

* docs(it): audit residual SDK references

* docs(it): audit Figma compatibility reference

* docs(it): complete residual terminology sweep

* docs(i18n): verify residual locale terminology
2026-08-20 18:36:50 +03:00

230 lines
22 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Совместимость с Figma
Сравнение возможностей Figma Design с текущим состоянием OpenPencil.
::: tip Статус
✅ Поддерживается полностью · 🟡 Поддерживается частично · 🔲 Пока не реализовано
:::
**Покрытие:** учтены 94 из 158 возможностей Figma — 76 ✅ полностью, 18 🟡 частично и 64 🔲 пока отсутствуют. Обновлено 7 марта 2026 года.
## Интерфейс и навигация
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Панель инструментов | ✅ | Нижняя панель в стиле UI3: выделение, фрейм, секция, прямоугольник, эллипс, линия, текст, рука и перо |
| Панель слоёв | ✅ | Дерево с раскрытием, перетаскиванием, видимостью и изменяемой шириной |
| Страницы | ✅ | Добавление, удаление и переименование; отдельное состояние области просмотра |
| Панель свойств | ✅ | Внешний вид, заливка, обводка, эффекты, типографика, компоновка и положение |
| Масштаб и перемещение | ✅ | <kbd>Ctrl</kbd> + прокрутка, жест сведения пальцев, <kbd>⌘</kbd><kbd>+</kbd>/<kbd>−</kbd>, <kbd>⌘</kbd><kbd>0</kbd>, <kbd>⌘</kbd><kbd>1</kbd>, <kbd>⌘</kbd><kbd>2</kbd>, <kbd>Space</kbd> + перетаскивание, средняя кнопка и инструмент «Рука» |
| Линейки | ✅ | Верхняя и левая линейки с диапазоном выделения и координатами |
| Фон холста | ✅ | Отдельный цвет для каждой страницы |
| Направляющие | 🔲 | Нет направляющих, перетаскиваемых с линеек |
| Палитра команд | 🔲 | Нет быстрого поиска действий |
| Контекстное меню | ✅ | Буфер обмена, порядок, группы, компоненты, видимость, блокировка и перенос на страницу |
| Сочетания клавиш | 🟡 | Основные команды, компоненты, порядок, видимость и блокировка; часть инструментов и форматирования текста отсутствует |
| Поиск и замена | 🔲 | Нет поиска и замены текста во всём документе |
| Контуры слоёв | 🔲 | Нет каркасного представления всех слоёв |
| Собственная миниатюра | 🔲 | Миниатюра создаётся при экспорте, но выбрать её нельзя |
| Настройка шага перемещения | 🔲 | Используются 1 и 10 пикселей; собственные значения не задаются |
| Меню приложения | ✅ | File, Edit, View, Object, Text и Arrange в браузере; системные меню в Tauri |
| Инструменты ИИ | 🟡 | 90 инструментов через поставщиков моделей и MCP; нет генерации изображений и поиска с ИИ |
## Слои и фигуры
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Прямоугольник, эллипс, линия, многоугольник и звезда | ✅ | Основные фигуры; настраиваются стороны многоугольника и внутренний радиус звезды |
| Фреймы | ✅ | Обрезка содержимого, собственная система координат и заготовки создания и размера |
| Группы | ✅ | <kbd>⌘</kbd><kbd>G</kbd> и <kbd>⇧</kbd><kbd>⌘</kbd><kbd>G</kbd> |
| Секции | ✅ | Подписи, автоматическое принятие пересекающихся объектов и цвет текста по яркости |
| Дуги | ✅ | `arcData` с начальным, конечным углом и внутренним радиусом |
| Карандаш | 🔲 | Нет свободного рисования |
| Маски | 🔲 | Нет масок фигур для обрезки слоёв |
| Типы и иерархия | ✅ | 17 типов объектов, плоская Map и дерево родителей и потомков |
| Выделение | ✅ | Щелчок, Shift + щелчок и прямоугольное выделение |
| Выравнивание и положение | ✅ | Положение, поворот и размеры на панели свойств |
| Копирование объектов | ✅ | Обычный буфер обмена, бинарный Kiwi Figma и копирование как текст, SVG, PNG или JSX |
| Пропорциональный размер | 🟡 | Shift сохраняет пропорции; отдельного инструмента Scale нет |
| Блокировка | ✅ | <kbd>⇧</kbd><kbd>⌘</kbd><kbd>L</kbd>; заблокированный объект нельзя выбрать или переместить на холсте |
| Видимость | ✅ | Значок глаза и <kbd>⇧</kbd><kbd>⌘</kbd><kbd>H</kbd> |
| Переименование | ✅ | Редактирование имени на панели слоёв |
| Передний и задний план | ✅ | <kbd>]</kbd> и <kbd>[</kbd>, а также контекстное меню |
| Перенос на страницу | ✅ | Перемещение выделенных объектов между страницами |
| Ограничения | 🔲 | Нет привязки краёв и центра при изменении размера родителя |
| Умное выделение | 🔲 | Нет равномерного распределения нескольких объектов |
| Сетки компоновки | 🔲 | Нет направляющих столбцов, строк и сетки во фреймах |
| Измерение расстояний | 🔲 | Нет отображения расстояний по Alt + наведение |
| Массовое изменение | ✅ | Положение, размер, внешний вид, заливка, обводка и эффекты; разные значения отмечаются как `Mixed` |
| Поиск похожих объектов | 🔲 | Не реализован |
| Копирование свойств | 🔲 | Нет переноса заливки, обводки и эффектов между объектами |
| Родители и потомки | ✅ | Полная иерархия через `parentIndex` и смена родителя перетаскиванием |
## Векторные инструменты
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Векторные сети | ✅ | Совместимая с Figma модель вместо простого списка точек |
| Перо | ✅ | Угловые точки, кривые Безье, открытые и замкнутые контуры |
| Редактирование векторов | 🟡 | Создание и базовое изменение геометрии; часть сложных операций ограничена |
| Логические операции | 🔲 | Нет объединения, вычитания, пересечения и исключения |
| Объединение контуров | 🔲 | Нет Flatten |
| Преобразование обводки | 🔲 | Нет Outline Stroke |
| Преобразование текста | 🔲 | Нет преобразования текста в векторные контуры |
| Shape builder | 🔲 | Нет интерактивного инструмента логических операций |
| Смещение контура | 🔲 | Нет внутреннего и внешнего смещения |
| Упрощение контура | 🔲 | Нет уменьшения числа точек |
## Текст и типографика
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Текст и редактирование | ✅ | Редактирование на холсте, скрытая `textarea`, курсор, выделение, выбор слова, перетаскивание, двойной и тройной щелчок, диапазоны стилей |
| Отрисовка текста | ✅ | CanvasKit Paragraph для формирования строк и метрик |
| Системные шрифты | ✅ | Inter, font-kit в Tauri, `queryLocalFonts` в браузере |
| Семейство и начертание | ✅ | FontPicker с поиском, виртуальной прокруткой и предварительным просмотром |
| Размер и интерлиньяж | ✅ | Редактируются в разделе «Типографика» |
| Выравнивание | 🟡 | Основное выравнивание; нет вертикального и всех режимов автоматического размера |
| Стили текста | 🟡 | Полужирное, курсив, подчёркивание и зачёркивание; нет именованных переиспользуемых стилей |
| Режимы размера текста | 🔲 | Нет Auto width, Auto height и Fixed size |
| Списки | 🔲 | Нет маркированных и нумерованных списков |
| Ссылки | 🔲 | Нет гиперссылок внутри текста |
| Эмодзи и специальные символы | 🔲 | Поддержка неполная |
| OpenType | 🔲 | Нет лигатур, стилистических вариантов и табличных цифр |
| Вариативные шрифты | 🔲 | Нет настройки осей |
| CJK | 🔲 | Нет полной поддержки китайского, японского и корейского текста |
| RTL | 🔲 | Нет компоновки справа налево |
| Иконочные шрифты | 🔲 | Нет специальной обработки глифов |
## Цвета, градиенты и изображения
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Выбор цвета HSV | ✅ | Поле HSV, ползунки тона и прозрачности, шестнадцатеричный ввод |
| Сплошные заливки | ✅ | Цвет и прозрачность |
| Линейный градиент | ✅ | Точки и рычаги преобразования |
| Радиальный градиент | ✅ | Шейдеры CanvasKit |
| Угловой градиент | ✅ | Sweep/Conic |
| Ромбический градиент | ✅ | Четырёхточечный градиент |
| Заливки изображениями | ✅ | Декодирование Blob и режимы Fill, Fit, Crop и Tile |
| Узорные заливки | 🔲 | Нет повторяющихся узоров |
| Режимы наложения | 🔲 | Нет режимов наложения слоёв и заливок |
| Изображения и видео | 🟡 | Заливки отображаются; нет импорта перетаскиванием и видео |
| Коррекция изображения | 🔲 | Нет экспозиции, контраста и насыщенности |
| Обрезка | 🔲 | Нет интерактивной обрезки |
| Пипетка | 🔲 | Нет получения цвета с холста |
| Цвета нескольких объектов | 🔲 | Нет общего изменения цветов неоднородного выделения |
| Цветовые модели | 🟡 | HSV и Hex; нет переключения HSL или RGB |
## Эффекты и свойства
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Внешняя тень | ✅ | Смещение, размытие и цвет через фильтры CanvasKit |
| Внутренняя тень | ✅ | Внутренняя тень |
| Размытие слоя | ✅ | Гауссово размытие |
| Размытие фона | ✅ | Размытие содержимого за объектом |
| Размытие переднего плана | ✅ | Размытие перед объектом |
| Толщина обводки | ✅ | Настраивается на панели свойств |
| Концы обводки | ✅ | `NONE`, `ROUND`, `SQUARE`, `ARROW_LINES`, `ARROW_EQUILATERAL` |
| Соединения обводки | ✅ | Острые, скошенные и круглые |
| Штрихи | ✅ | Чередование штриха и промежутка |
| Выравнивание обводки | ✅ | Внутри, по центру и снаружи с обрезкой как в Figma |
| Толщина отдельных сторон | ✅ | Верхняя, правая, нижняя и левая стороны |
| Радиус углов | ✅ | Общий или отдельный для каждого угла |
| Сглаживание углов | 🔲 | Нет непрерывного скругления |
| Несколько заливок и обводок | 🔲 | Нет наложения нескольких красок на один объект |
## Автоматическая компоновка
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Горизонтальный и вертикальный поток | ✅ | Flexbox Yoga WASM |
| <kbd>⇧</kbd><kbd>A</kbd> | ✅ | Включение для фрейма или оборачивание выделения |
| Интервал | ✅ | Настраивается на панели свойств |
| Отступы | ✅ | Общие или отдельные для четырёх сторон |
| Распределение | ✅ | Начало, центр, конец и между объектами |
| Поперечное выравнивание | ✅ | Начало, центр, конец и растягивание |
| Размеры | ✅ | Fixed, Fill и Hug для каждой оси |
| Перенос | ✅ | Flex wrap |
| Grid | ✅ | CSS Grid через ответвление Yoga: дорожки, интервалы и объединение ячеек |
| Вложенные потоки | ✅ | Вложенные фреймы с разными направлениями |
| Изменение порядка | ✅ | Визуальный индикатор вставки |
| Минимальные и максимальные размеры | 🔲 | Нет ограничений для дочерних объектов |
## Компоненты и дизайн-системы
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Создание компонентов | ✅ | Из фрейма, группы или нескольких объектов; свойства текста, видимости, замены экземпляра и варианты |
| Наборы компонентов | ✅ | Многомерные неполные варианты, проверка дубликатов и верхний левый вариант по умолчанию |
| Экземпляры | ✅ | Assets, вставка, свойства, переопределения, переключение вариантов, синхронизация и проверка обновлений |
| Варианты | ✅ | Создание, переключение, неполные сочетания и замена верхним левым вариантом |
| Свойства компонентов | ✅ | Логическая видимость, текст и замена экземпляра |
| Распространение изменений | ✅ | Основной компонент обновляет экземпляры, сохраняя переопределения |
| Переменные | 🟡 | Полный интерфейс для `COLOR`; `FLOAT`, `STRING` и `BOOLEAN` без интерфейса редактирования |
| Коллекции и режимы | 🟡 | Коллекции, режимы и `activeMode`; нет интерфейса тем на основе переменных |
| Стили | 🔲 | Нет именованных стилей цвета, текста, эффектов и компоновки |
| Библиотеки | ✅ | Неизменяемые локальные и удалённые редакции, выборочная публикация, обновления, работа без сети и сохранение в `.fig` |
| Отсоединение экземпляра | ✅ | <kbd>⌥</kbd><kbd>⌘</kbd><kbd>B</kbd> превращает экземпляр во фрейм |
| Переход к основному компоненту | ✅ | Переход к исходному компоненту, в том числе на другую страницу |
## Прототипирование
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Связи | 🔲 | Пока не поддерживаются |
| Триггеры | 🔲 | Щелчок, наведение, перетаскивание и другие события |
| Действия | 🔲 | Переход, наложение, прокрутка и другие действия |
| Анимации | 🔲 | Переходы и анимации |
| Smart animate | 🔲 | Автоматическая анимация совпадающих слоёв |
| Наложения | 🔲 | Модальные и всплывающие прототипы |
| Прокрутка | 🔲 | Прокручиваемые фреймы в прототипах |
| Потоки | 🔲 | Именованные начальные точки |
| Переменные | 🔲 | Условная логика |
| Кривые и пружины | 🔲 | Собственные кривые анимации |
| Режим показа | 🔲 | Полноэкранный просмотр прототипа |
## Импорт и экспорт
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Импорт .fig | ✅ | Кодек Kiwi: 194 определения и около 390 полей в `NodeChange` |
| Экспорт .fig | ✅ | Kiwi, Zstd и миниатюра; `COMPONENT` и `COMPONENT_SET` преобразуются в `SYMBOL` для обратной совместимости |
| Сохранение | ✅ | Системные диалоги в Tauri, File System Access API в Chrome и Edge, скачивание в Safari |
| Вставка из Figma | ✅ | Декодирование бинарного Kiwi из буфера обмена Figma |
| Копирование в Figma | ✅ | Создание бинарного Kiwi, читаемого Figma |
| Импорт Sketch | 🔲 | Нет разбора `.sketch` |
| Экспорт изображений, SVG и PDF | 🟡 | PNG, JPG, WEBP и SVG поддерживаются; PDF отсутствует |
| История версий | 🔲 | Нет просмотра и восстановления версий |
| Обмен ресурсами | ✅ | Буфер обмена Figma и копирование как текст, SVG, PNG или JSX |
## Plugin API и сценарии
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| `eval` с Figma Plugin API | ✅ | JavaScript без интерфейса с глобальным `figma`, близким к API плагинов Figma |
## Совместная работа и режим разработчика
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Комментарии | 🔲 | Нет меток, веток обсуждения и разрешения комментариев |
| Совместное редактирование | ✅ | P2P через Trystero и Yjs CRDT, указатели и режим слежения без сервера |
| Чат у указателя | 🔲 | Нет сообщений рядом с указателем |
| Ветвление и слияние | 🔲 | Нет веток версий для файлов дизайна |
| Режим разработчика | 🟡 | Вкладка «Код» показывает JSX выделения; нет свойств CSS и спецификаций передачи |
| Code Connect | 🔲 | Нет связи компонентов дизайна с кодом |
| Фрагменты кода | 🟡 | JSX с подсветкой и копированием; нет CSS, Swift и Kotlin |
| Tailwind CSS v4 | ✅ | HTML с классами из вкладки «Код», CLI или программного API |
| Figma for VS Code | 🔲 | Нет интеграции с редактором кода |
| Сервер MCP | ✅ | `@open-pencil/mcp`, stdio и HTTP; 87 основных и 3 файловых инструмента |
| CLI | ✅ | `info`, `tree`, `find`, `export`, `analyze`, `node`, `pages`, `variables`, `eval` и вывод JSON |
## Figma Draw
| Возможность | Статус | Примечания |
|-------------|--------|------------|
| Инструменты иллюстрации | 🔲 | Нет специализированных инструментов Figma Draw |
| Преобразования узоров | 🔲 | Нет повторяющихся узоров с преобразованиями |