Search K
Image to Base64
แปลงภาพหนึ่งภาพหรือมากกว่าเป็นสตริงที่เข้ารหัส base64 และ data URI รองรับการแปลงรูปแบบ การควบคุมคุณภาพ และการปรับขนาดที่เป็นทางเลือก มีประโยชน์สำหรับการฝังภาพโดยตรงใน HTML, CSS, JSON หรือเทมเพลตอีเมล
API Endpoint
POST /api/v1/tools/image/image-to-base64
รับข้อมูลแบบ multipart form data ที่มีไฟล์ภาพหนึ่งไฟล์หรือมากกว่า และฟิลด์ JSON settings ที่เป็นทางเลือก
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| outputFormat | string | No | "original" | แปลงก่อนการเข้ารหัส: original, jpeg, png, webp, avif, jxl |
| quality | number | No | 80 | คุณภาพผลลัพธ์สำหรับรูปแบบ lossy (1 ถึง 100) |
| maxWidth | number | No | 0 | ความกว้างสูงสุดเป็นพิกเซล (0 = ไม่ปรับขนาด จะไม่ขยาย) |
| maxHeight | number | No | 0 | ความสูงสูงสุดเป็นพิกเซล (0 = ไม่ปรับขนาด จะไม่ขยาย) |
Example Request
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"}'Example Response
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": []
}Response Fields
| Field | Type | Description |
|---|---|---|
| results | array | ภาพที่แปลงสำเร็จ |
| errors | array | ภาพที่ประมวลผลล้มเหลว (พร้อมชื่อไฟล์และข้อความแสดงข้อผิดพลาด) |
Result Object
| Field | Type | Description |
|---|---|---|
| filename | string | ชื่อไฟล์เดิม |
| mimeType | string | MIME type ของผลลัพธ์ที่เข้ารหัส |
| width | number | ความกว้างสุดท้ายเป็นพิกเซล (หลังจากการปรับขนาด) |
| height | number | ความสูงสุดท้ายเป็นพิกเซล (หลังจากการปรับขนาด) |
| originalSize | number | ขนาดไฟล์เดิมเป็นไบต์ |
| encodedSize | number | ขนาดของสตริง base64 เป็นไบต์ |
| overheadPercent | number | เปอร์เซ็นต์ความแตกต่างของขนาดเทียบกับต้นฉบับ (บวก = ใหญ่ขึ้น, ลบ = เล็กลง) |
| base64 | string | ข้อมูลภาพที่เข้ารหัส base64 ดิบ |
| dataUri | string | data URI ที่สมบูรณ์พร้อมใช้งานในแอตทริบิวต์ src |
Notes
- การเข้ารหัส base64 มักเพิ่มขนาดประมาณ 33% เมื่อเทียบกับไฟล์ไบนารี ฟิลด์
overheadPercentแสดงความแตกต่างที่แท้จริง - เมื่อ
outputFormatเป็น"original"ไฟล์ HEIC/HEIF จะถูกแปลงเป็น JPEG (เนื่องจากเบราว์เซอร์ไม่สามารถแสดง HEIC ใน data URI ได้) - ตัวเลือก
maxWidthและmaxHeightปรับขนาดโดยใช้fit: insideร่วมกับwithoutEnlargementดังนั้นภาพที่เล็กกว่าขนาดที่ระบุจะไม่ถูกขยาย - สามารถประมวลผลหลายไฟล์ในคำขอเดียว แต่ละไฟล์ถูกประมวลผลแยกกัน และความล้มเหลวไม่ทำให้ไฟล์อื่นๆ ล้มเหลว
- ไฟล์ SVG จะถูกส่งผ่านเป็น
image/svg+xmlโดยไม่มีการเข้ารหัสซ้ำ (เว้นแต่มีการร้องขอการแปลงรูปแบบ) - นี่คือ endpoint แบบอ่านอย่างเดียว ไม่ผลิตไฟล์ที่ดาวน์โหลดได้หรือ
jobIdข้อมูล base64 จะถูกคืนค่าโดยตรงในเนื้อหาการตอบกลับ
