Search K
Изображение в Base64
Конвертирует одно или несколько изображений в строки, закодированные в base64, и data URI. Поддерживает необязательную конвертацию формата, управление качеством и изменение размера. Полезно для встраивания изображений напрямую в HTML, CSS, JSON или шаблоны писем.
Конечная точка API
POST /api/v1/tools/image/image-to-base64
Принимает данные формы multipart с одним или несколькими файлами изображений и необязательным полем JSON settings.
Параметры
| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| outputFormat | string | Нет | "original" | Конвертировать перед кодированием: original, jpeg, png, webp, avif, jxl |
| quality | number | Нет | 80 | Качество вывода для форматов с потерями (от 1 до 100) |
| maxWidth | number | Нет | 0 | Максимальная ширина в пикселях (0 = без изменения размера, не увеличивает) |
| maxHeight | number | Нет | 0 | Максимальная высота в пикселях (0 = без изменения размера, не увеличивает) |
Пример запроса
bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
-H "Authorization: Bearer si_your-api-key" \
-F "[email protected]" \
-F 'settings={"outputFormat": "webp", "quality": 80, "maxWidth": 200}'Несколько файлов:
bash
curl -X POST http://localhost:1349/api/v1/tools/image/image-to-base64 \
-H "Authorization: Bearer si_your-api-key" \
-F "[email protected]" \
-F "[email protected]" \
-F "[email protected]" \
-F 'settings={"outputFormat": "original"}'Пример ответа
json
{
"results": [
{
"filename": "icon.png",
"mimeType": "image/webp",
"width": 200,
"height": 200,
"originalSize": 45000,
"encodedSize": 28800,
"overheadPercent": -36.0,
"base64": "UklGRlYAAABXRUJQ...",
"dataUri": "data:image/webp;base64,UklGRlYAAABXRUJQ..."
}
],
"errors": []
}Поля ответа
| Поле | Тип | Описание |
|---|---|---|
| results | array | Успешно сконвертированные изображения |
| errors | array | Изображения, которые не удалось обработать (с именем файла и сообщением об ошибке) |
Объект result
| Поле | Тип | Описание |
|---|---|---|
| filename | string | Исходное имя файла |
| mimeType | string | MIME-тип закодированного вывода |
| width | number | Итоговая ширина в пикселях (после любого изменения размера) |
| height | number | Итоговая высота в пикселях (после любого изменения размера) |
| originalSize | number | Исходный размер файла в байтах |
| encodedSize | number | Размер строки base64 в байтах |
| overheadPercent | number | Процентная разница размера относительно оригинала (положительная = больше, отрицательная = меньше) |
| base64 | string | Необработанные данные изображения, закодированные в base64 |
| dataUri | string | Полный data URI, готовый к использованию в атрибутах src |
Примечания
- Кодирование base64 обычно увеличивает размер примерно на 33% по сравнению с двоичным файлом. Поле
overheadPercentпоказывает фактическую разницу. - Когда
outputFormatравен"original", файлы HEIC/HEIF конвертируются в JPEG (поскольку браузеры не могут отображать HEIC в data URI). - Параметры
maxWidthиmaxHeightизменяют размер с помощьюfit: insideсwithoutEnlargement, поэтому изображения меньше указанных размеров не увеличиваются. - В одном запросе можно обработать несколько файлов. Каждый файл обрабатывается независимо, и сбои не мешают успешной обработке остальных файлов.
- Файлы SVG передаются как
image/svg+xmlбез перекодирования (если не запрошена конвертация формата). - Это конечная точка только для чтения. Она не создаёт загружаемый файл или
jobId. Данные base64 возвращаются напрямую в теле ответа.
