Цю сторінку перекладено машинним способом. Помітили помилку?Допоможіть її покращити.
Skip to content

Рушій зображень ​

Пакет @snapotter/image-engine обробляє всі операції із зображеннями, що не належать до AI. Він обгортає Sharp і виконується повністю в межах процесу без зовнішніх залежностей.

Операції ​

resize ​

Масштабувати зображення до конкретних розмірів або за відсотком.

ПараметрТипОпис
widthnumberЦільова ширина в пікселях
heightnumberЦільова висота в пікселях
fitstringcover, contain, fill, inside або outside
withoutEnlargementbooleanЯкщо true, не збільшуватиме менші зображення
percentagenumberМасштабувати за відсотком замість абсолютних розмірів

Можна задати width, height або обидва. Якщо задати лише один, інший обчислюється для збереження співвідношення сторін.

crop ​

Вирізати прямокутну область із зображення.

ПараметрТипОпис
leftnumberЗсув X від лівого краю
topnumberЗсув Y від верхнього краю
widthnumberШирина області обрізання
heightnumberВисота області обрізання
unitstringpx (за замовчуванням) або percent

rotate ​

Повернути зображення на заданий кут.

ПараметрТипОпис
anglenumberКут повороту в градусах (0-360)
backgroundstringКолір заливки відкритої області (за замовчуванням: #000000). Застосовується лише до кутів, відмінних від 90 градусів.

flip ​

Віддзеркалити зображення горизонтально, вертикально або обидва способи. Принаймні один має бути true.

ПараметрТипОпис
horizontalbooleanВіддзеркалити зліва направо
verticalbooleanВіддзеркалити зверху вниз

convert ​

Змінити формат зображення.

ПараметрТипОпис
formatstringЦільовий формат: jpg, png, webp, avif, tiff, gif, jxl, heic, heif, bmp, ico, jp2, qoi
qualitynumberЯкість стиснення (1-100, застосовується до форматів зі втратами)

Перші сім форматів (від jpg до jxl) кодуються Sharp у межах процесу. Решта форматів використовують зовнішні кодери на рівні API: heic/heif через heif-enc, bmp/ico через ImageMagick, jp2 через opj_compress, а qoi через вбудований кодек TypeScript.

compress ​

Зменшити розмір файлу, зберігаючи той самий формат.

ПараметрТипОпис
qualitynumberЦільова якість (1-100)
targetSizeBytesnumberОпціональний цільовий розмір файлу в байтах
formatstringОпціональне перевизначення формату

strip-metadata ​

Видалити метадані EXIF, IPTC, XMP та ICC із зображення. Без параметрів (або з stripAll: true) видаляє все. Передайте окремі прапорці для вибіркового видалення.

ПараметрТипОпис
stripAllbooleanВидалити всі метадані (за замовчуванням, коли прапорці не задано)
stripExifbooleanВидалити дані EXIF (включно з GPS, якщо stripGps не задано окремо)
stripGpsbooleanВидалити дані GPS-локації
stripIccbooleanВидалити колірний профіль ICC
stripXmpbooleanВидалити метадані XMP

Корекції кольору ​

Ці операції змінюють властивості кольору зображення. Кожна приймає одне числове значення.

ОпераціяПараметрДіапазонОпис
brightnessvalue-100 до 100Налаштувати яскравість
contrastvalue-100 до 100Налаштувати контраст
saturationvalue-100 до 100Налаштувати насиченість кольору

Колірні фільтри ​

Ці застосовують фіксоване перетворення кольору. Вони не приймають параметрів.

ОпераціяОпис
grayscaleПеретворити на відтінки сірого
sepiaЗастосувати тон сепії
invertІнвертувати всі кольори

Колірні канали ​

Налаштувати окремі колірні канали RGB. Значення є множниками, де 100 = без змін.

ПараметрТипОпис
rednumberМножник червоного каналу (0 до 200, 100 = без змін)
greennumberМножник зеленого каналу (0 до 200, 100 = без змін)
bluenumberМножник синього каналу (0 до 200, 100 = без змін)

sharpen ​

Просте підвищення різкості, кероване одним значенням.

ПараметрТипОпис
valuenumberІнтенсивність підвищення різкості (0 до 100). Зіставляється з сигмою Гауса 0.5-10.

sharpen-advanced ​

Розширене підвищення різкості з трьома доступними методами й опціональним попереднім проходом зменшення шуму.

ПараметрТипОпис
methodstringadaptive, unsharp-mask або high-pass
sigmanumberРадіус розмиття за Гаусом, 0.5-10 (адаптивний)
m1numberПідвищення різкості плоских областей, 0-10 (адаптивне)
m2numberПідвищення різкості текстурованих областей, 0-20 (адаптивне)
x1numberПоріг плоского/зубчастого, 0-10 (адаптивний)
y2numberМакс. освітлення (обмеження ореолу), 0-50 (адаптивне)
y3numberМакс. затемнення (обмеження ореолу), 0-50 (адаптивне)
amountnumberВідсоток інтенсивності, 0-500 (unsharp-mask)
radiusnumberРадіус розмиття, 0.1-5.0 (unsharp-mask)
thresholdnumberМінімальна яскравість краю, 0-255 (unsharp-mask)
strengthnumberСила змішування, 0-100 (high-pass)
kernelSizenumber3 або 5 для ядра 3x3 / 5x5 (high-pass)
denoisestringПопередній прохід зменшення шуму: off, light, medium або strong

Параметри залежать від методу. Надавайте лише ті, що стосуються обраного методу.

color-blindness ​

Симулювати порушення колірного зору за допомогою матриці рекомбінації кольорів 3x3.

ПараметрТипОпис
typestringОдин із: protanopia, deuteranopia, tritanopia, protanomaly, deuteranomaly, tritanomaly, achromatopsia, blueConeMonochromacy

edit-metadata ​

Записати або видалити окремі поля метаданих EXIF/IPTC без видалення всього блоку.

ПараметрТипОпис
artiststringТег EXIF Artist
copyrightstringТег EXIF Copyright
imageDescriptionstringТег EXIF ImageDescription
softwarestringТег EXIF Software
dateTimestringТег EXIF DateTime
dateTimeOriginalstringТег EXIF DateTimeOriginal
clearGpsbooleanВидалити всі теги GPS
fieldsToRemovestring[]Список імен полів EXIF для видалення

Усі параметри опціональні. Поля, перелічені в fieldsToRemove, видаляються з наявного блоку EXIF. Поля, задані через іменовані параметри, записуються (або перезаписуються). Двійкові/небезпечні ключі на кшталт MakerNote мовчки ігноруються.

Визначення формату ​

Рушій визначає вхідні формати автоматично за заголовками файлів, а не лише за розширеннями. Це означає, що файл .jpg, який насправді є PNG, буде оброблено правильно. Визначення використовує багаторівневий підхід: спочатку магічні байти, потім розширення файлу як резервний варіант.

SnapOtter підтримує 55+ вхідних форматів та 13 вихідних форматів, включно з 23 форматами RAW камер від 20+ брендів, професійними форматами (PSD, EPS, OpenEXR, HDR), сучасними кодеками (JPEG XL, AVIF, HEIC, QOI, JPEG 2000) та науковими/ігровими форматами (FITS, DDS). Декодування виконується Sharp нативно, де це можливо, з автоматичним переходом до ImageMagick, LibRaw та спеціалізованих CLI-декодерів.

Повний перелік дивіться на сторінці Підтримувані формати.

Витягання метаданих ​

Інструмент info повертає метадані зображення. Повний довідник полів дивіться в Image Info.

json
{
  "filename": "photo.jpg",
  "fileSize": 2450000,
  "width": 4032,
  "height": 3024,
  "format": "jpeg",
  "channels": 3,
  "hasAlpha": false,
  "colorSpace": "srgb",
  "density": 72,
  "isProgressive": false,
  "hasExif": true,
  "hasIcc": true,
  "hasXmp": false,
  "bitDepth": "8",
  "pages": 1,
  "histogram": [
    { "channel": "red", "min": 0, "max": 255, "mean": 128.45, "stdev": 52.31 },
    { "channel": "green", "min": 2, "max": 253, "mean": 115.22, "stdev": 48.76 },
    { "channel": "blue", "min": 0, "max": 250, "mean": 102.89, "stdev": 55.14 }
  ]
}