Продвинутый инструмент для создания пиксель-арта с автоматическим рисованием и поддержкой различных алгоритмов подбора цвета.
Wplace Drawer - это GUI-приложение на Python/Tkinter для обработки изображений и их конвертации в пиксель-арт. Приложение поддерживает различные алгоритмы цветокоррекции, автоматическую калибровку координат и автоматическое рисование с помощью управления мышью.
- OKLab - Перцептивный алгоритм (рекомендуется)
- Delta E CIE76 - Стандарт цветовых различий CIE
- RGB Euclidean - Простое евклидово расстояние в RGB
- Загрузка изображений (PNG, JPG, WEBP, BMP, GIF)
- Автоматическая обрезка прозрачных областей
- Изменение размера с сохранением пропорций
- Дизеринг по алгоритму Floyd-Steinberg
- Лимитирование по количеству пикселей
- Расширенная базовая палитра из 80+ цветов
- Оптимизация палитры под изображение (k-means)
- Создание палитры из области экрана
- Сохранение/загрузка палитр в JSON
- Привязка координат цветов палитры
- Калибровка координат сетки
- Автоматическое переключение цветов
- Настраиваемые задержки
- Failsafe режим (мышь в угол экрана)
- Экспорт данных в CSV/JSON
- Python 3.7+
- Tkinter (обычно входит в Python)
- PIL (Pillow)
- pyautogui (опционально, для автоматического рисования)
pip install pillow pyautoguipython wplace_drawer2.py- Открытие изображения: Нажмите "Открыть изображение" и выберите файл
- Настройка размеров:
- Ширина/Высота: Желаемые размеры сетки
- Лимит пикселей: Максимальное количество ячеек (ширина × высота)
- Опции обработки:
- Обрезать поля: Автоматически удаляет прозрачные границы
- Авто-максимум: Максимизирует размер под лимитом с сохранением пропорций
- Дизеринг: Применяет сглаживание Floyd-Steinberg
В правой панели выберите один из алгоритмов:
- oklab: Лучший для большинства случаев, учитывает восприятие человека
- deltaE: Промышленный стандарт для точного сравнения цветов
- rgb: Самый быстрый, но менее точный
- Оптимизировать палитру: Анализирует изображение и создает оптимальную палитру
- Сбросить к расширенной палитре: Возвращает к стандартному набору
- Собрать палитру из области: Извлекает цвета из выделенной области экрана
- Загрузить палитру JSON: Импорт палитры из файла
- Сохранить палитру JSON: Экспорт текущей палитры
Для автоматического рисования нужно откалибровать координаты:
-
Калибровка сетки:
- Наведите мышь на центр верхней левой ячейки → "Запомнить Top-Left"
- Наведите мышь на центр верхней правой ячейки → "Запомнить Top-Right"
- Наведите мышь на центр нижней левой ячейки → "Запомнить Bottom-Left"
- Наведите мышь на центр нижней правой ячейки → "Запомнить Bottom-Right"
-
Калибровка палитры (опционально):
- "Указать TL палитры" - левый верхний угол области палитры
- "Указать BR палитры" - правый нижний угол области палитры
- "Запомнить координату для выбранного цвета" - точная позиция конкретного цвета
- Выберите цвет из списка справа
- Нажмите "Нарисовать выбранный цвет"
- Настройте задержки:
- Стартовая задержка: Время до начала рисования (для переключения в нужное окно)
- Пауза между кликами: Интервал между отдельными кликами
- Нажмите "Нарисовать все цвета (по порядку)"
- Экспорт CSV: Простая таблица с координатами и цветами
- Экспорт JSON: Полные данные включая размеры сетки
- Порог альфы: Уровень прозрачности для считывания пикселя пустым (0-255)
- Толерантность фона: Чувствительность определения фонового цвета
- При оптимизации/сборе палитры можно указать желаемое количество цветов
- Загрузите изображение
- Выберите алгоритм "oklab"
- Нажмите "Оптимизировать палитру"
- При необходимости откорректируйте размер палитры
- Загрузите и обработайте изображение
- Выполните калибровку координат сетки
- Настройте задержки (рекомендуется 2-3 сек на старт)
- Переключитесь в целевое приложение
- Запустите "Нарисовать все цвета"
{
"palette": [
"#FF0000",
"#00FF00",
"#0000FF"
]
}{
"#FF0000": [100, 200],
"#00FF00": [150, 200]
}- Убедитесь что pyautogui установлен:
pip install pyautogui - На Linux может потребоваться:
sudo apt-get install python3-tk python3-dev
- Поддерживаются: PNG, JPG, JPEG, WEBP, BMP, GIF
- При ошибках попробуйте конвертировать изображение в PNG
- Проверьте что все 4 угловые точки заданы корректно
- Углы должны образовывать прямоугольник
- Используйте центры ячеек, не границы
MIT License - свободное использование и модификация.
Если у вас возникли вопросы или предложения, создайте Issue в репозитории проекта.