mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
4.9 KiB
4.9 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Удаление метаданных EXIF, GPS, ICC и XMP из изображений для приватности и уменьшения размера файла. | 07f61cdb2c26 | human | 3bc878783056 |
Удаление метаданных изображения
Удалите метаданные EXIF, GPS, цветовые профили ICC и метаданные XMP из изображений. Полезно для приватности (удаление GPS-координат, информации о камере) и уменьшения размера файла.
Конечные точки API
Удаление метаданных
POST /api/v1/tools/image/strip-metadata
Обрабатывает изображение и возвращает очищенную версию с удалёнными выбранными метаданными.
Просмотр метаданных
POST /api/v1/tools/image/strip-metadata/inspect
Возвращает разобранные метаданные в виде JSON без изменения изображения. Полезно для предварительного просмотра существующих метаданных перед удалением.
Параметры (удаление)
| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| stripExif | boolean | Нет | false |
Удалить данные EXIF (настройки камеры, даты и т. д.) |
| stripGps | boolean | Нет | false |
Удалить только данные GPS/местоположения |
| stripIcc | boolean | Нет | false |
Удалить цветовой профиль ICC |
| stripXmp | boolean | Нет | false |
Удалить метаданные XMP (Adobe, IPTC) |
| stripAll | boolean | Нет | true |
Удалить все метаданные сразу |
Когда stripAll равно true, оно переопределяет отдельные флаги и удаляет всё.
Пример запроса
Удалить все метаданные:
curl -X POST http://localhost:1349/api/v1/tools/image/strip-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"stripAll": true}'
Удалить только данные GPS (сохранив информацию о камере и цветовой профиль):
curl -X POST http://localhost:1349/api/v1/tools/image/strip-metadata \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"stripAll": false, "stripGps": true}'
Просмотреть метаданные без изменения:
curl -X POST http://localhost:1349/api/v1/tools/image/strip-metadata/inspect \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg"
Пример ответа (удаление)
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 2380000
}
Пример ответа (просмотр)
{
"filename": "photo.jpg",
"fileSize": 2450000,
"exif": {
"Make": "Canon",
"Model": "EOS R5",
"DateTimeOriginal": "2024:03:15 14:30:00",
"ExposureTime": "1/250",
"FNumber": 2.8,
"ISO": 400
},
"gps": {
"GPSLatitudeRef": "N",
"GPSLatitude": [37, 46, 30],
"_latitude": 37.775,
"_longitude": -122.4183
},
"icc": {
"Profile Size": "3144 bytes",
"Color Space": "RGB",
"Description": "sRGB IEC61966-2.1"
},
"xmp": {
"CreatorTool": "Adobe Photoshop 25.0"
}
}
Примечания
- Изображение перекодируется в свой исходный формат после удаления. JPEG использует mozjpeg с качеством 90, PNG использует уровень сжатия 9, WebP использует качество 85.
- Удаление профилей ICC может вызвать незначительные сдвиги цвета, если изображение было помечено профилем, отличным от sRGB. Используйте
stripIcc: false, если важна точность цвета. - Конечная точка просмотра разбирает GPS-координаты в десятичные значения широты/долготы (с префиксом подчёркивания) для удобства.
- Поддерживаемые входные форматы: JPEG, PNG, WebP, AVIF, TIFF, GIF.