Программа для нарезки изображений.
Программа
2 836
23
Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Число вставленных изображений: 1, а требуется не менее 2
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Count of inserted images is: 1, but required not less than 2
// CID3
27
Вышла новая версия!
Прокрутить к ресурсу
📊 V5 → V6: Сравнение
Метрика V5 V6
Строк кода 2507 1785 (−29%)
HTML дублирование desktop/mobile ❌ Двойное ✅ Один sidebar
Архитектура JS Глобальные функции ✅ IIFE модуль TC
🔧 Исправленные проблемы
# Проблема Решение
1 Дублирование Desktop/Mobile HTML Один <aside> sidebar — на десктопе статичный, на мобильном выезжает как drawer
2 Утечка памяти (Image) Убрал промежуточный new Image() — фильтры рисуются через processCanvas напрямую, draw() берёт с него данные
3 ~200 утилитарных CSS-классов Заменены на семантический CSS (~300 строк вместо ~600)
4 Нет debounce на слайдерах Добавлен debounce(40ms) на applyAdjustments
5 Pinch-to-zoom не работал Реализовано отслеживание 2-х touch-точек
6 Мигающий drag overlay Исправлен через счётчик dragCounter
7 Нет Undo/Redo Ctrl+Z с стеком до 40 состояний
8 Лишний toDataURL→decode цикл draw() рисует напрямую из processCanvas
🆕 Новые фичи
# Фича Как работает
1 Undo (Ctrl+Z) Стек состояний сетки, до 40 шагов назад
2 Удаление линии (Delete) Выбрал линию → Delete/Backspace — линия удалена
3 Дублирование линии Кнопка «Duplicate (+8px)» — создаёт копию на +8px
4 Выравнивание ячеек Кнопка «Equalize All Cells» — сбрасывает в равные доли
5 Привязка (Snapping) Выбор шага: Off / 8 / 16 / 32 / 64 / 128px — линии «прилипают»
6 Подписи ячеек (R0C0, R1C2…) Рисуются на канвасе, можно отключить чекбоксом
7 Превью нарезки Мини-таблица будущих кусков прямо на рабочей области
8 Выбор формата экспорта PNG / JPEG / WebP с настройкой качества
9 CSS спрайт-таблица Генерирует sprite.css с background-position для каждого куска
10 Pinch-to-zoom Масштабирование двумя пальцами на мобильных
11 Ctrl+Scroll zoom Зум колёсиком мыши с зажатым Ctrl
12 Toast-уведомления Красивые анимированные уведомления вместо alert()
13 Горячие клавиши Ctrl+Z undo, Delete удалить линию, +/- добавить/убрать столбцы, стрелки ±1/10px
14 Мобильный drawer-sidebar Вместо дублированных панелей — единый sidebar с overlay
15 Лимит файла увеличен 10MB → 50MB
Загруженные файлы
JavaScript — мультипарадигменный язык программирования. Поддерживает объектно-ориентированный, императивный и функциональный стили. Является реализацией спецификации ECMAScript. JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений.
1 30
38
Модерация
Приветствую! Ресурс был снят с публикации и требует доработки по следующим причинам:
JavaScript — мультипарадигменный язык программирования. Поддерживает объектно-ориентированный, императивный и функциональный стили. Является реализацией спецификации ECMAScript. JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений.
1 44
38
Модерация
Приветствую! Ресурс был снят с публикации и требует доработки по следующим причинам:
Бесплатный курс Python (питон), самостоятельное обучение программированию с нуля
Изучение программирования — непростой и длительный процесс. Изучение синтаксиса языка — самая простая и короткая часть в пути, но без неё невозможно начать. Этот курс посвящен азам написания программ на Python. Он готовит плацдарм для написания осмысленных программ
Программа
3 84
38
Модерация
Приветствую! Ресурс был снят с публикации и требует доработки по следующим причинам:
23
Ваш ресурс не прошёл автомодерацию. Пожалуйста, внесите исправления или ожидайте проверки модератором.
Причина
Число вставленных изображений: 0, а требуется не менее 2
Your resource has not passed automoderation. Please make corrections or wait for the moderator to check.
Reason
Count of inserted images is: 0, but required not less than 2
// CID3
38
Предупреждение автору публикации
1 пункт: 4.1.1 Размещение бессмысленных сообщений (флуд).

Атрибуты в C#

Атрибутами в C# являются классы, содержащие в себе некоторую метаинформацию, встраиваемую в сборку приложения.
Атрибуты могут применяться ко всем типам в C#, включая даже другие атрибуты, поля, методы, свойства и перечисления. Основу атрибутов составляет класс System.Attribute, от которого все предполагаемые классы…
Статья
2 3.4K
29
Clamp, да.
Хоть и с запозданием, но, думаю, что лишним не будет для тех, кто чудом это прочитает. Это просто дополнительное предписание для типов.