Search K
Công cụ GIF
Thay đổi kích thước, tối ưu hóa, đổi tốc độ, đảo ngược, trích xuất khung hình và xoay GIF động. Cung cấp nhiều chế độ thao tác trong một công cụ duy nhất.
Điểm cuối API
POST /api/v1/tools/image/gif-tools
Tham số
Tham số chung
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| mode | string | Không | "resize" | Chế độ thao tác: resize, optimize, speed, reverse, extract, rotate |
| loop | number | Không | 0 | Số lần lặp cho GIF đầu ra (0 = vô hạn, 1-100 = số lần lặp hữu hạn) |
Tham số chế độ Resize
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| width | integer | Không | - | Chiều rộng đích tính bằng pixel (1 đến 16384) |
| height | integer | Không | - | Chiều cao đích tính bằng pixel (1 đến 16384) |
| percentage | number | Không | - | Thu phóng theo phần trăm (1 đến 500). Ghi đè width/height nếu được đặt. |
Tham số chế độ Optimize
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| colors | number | Không | 256 | Số màu tối đa trong bảng màu (2 đến 256) |
| dither | number | Không | 1.0 | Cường độ khử răng cưa màu (0 đến 1, trong đó 0 tắt dithering) |
| effort | number | Không | 7 | Mức nỗ lực tối ưu hóa (1 đến 10, cao hơn = chậm hơn nhưng nhỏ hơn) |
Tham số chế độ Speed
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| speedFactor | number | Không | 1.0 | Hệ số nhân tốc độ (0.1 đến 10). Giá trị > 1 tăng tốc, < 1 làm chậm. |
Tham số chế độ Extract
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| extractMode | string | Không | "single" | Chế độ trích xuất: single, range, all |
| frameNumber | number | Không | 0 | Chỉ số khung hình cần trích xuất trong chế độ single (bắt đầu từ 0) |
| frameStart | number | Không | 0 | Chỉ số khung hình bắt đầu cho chế độ range (bắt đầu từ 0) |
| frameEnd | number | Không | - | Chỉ số khung hình kết thúc cho chế độ range (bắt đầu từ 0, bao gồm cả chỉ số này) |
| extractFormat | string | Không | "png" | Định dạng cho khung hình được trích xuất: png, webp |
Tham số chế độ Rotate
| Tham số | Kiểu | Bắt buộc | Mặc định | Mô tả |
|---|---|---|---|---|
| angle | number | Không | - | Góc xoay: 90, 180, hoặc 270 độ |
| flipH | boolean | Không | false | Lật ngang |
| flipV | boolean | Không | false | Lật dọc |
Ví dụ yêu cầu
Resize
bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
-F "[email protected]" \
-F 'settings={"mode":"resize","percentage":50}'Optimize
bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
-F "[email protected]" \
-F 'settings={"mode":"optimize","colors":128,"effort":9}'Tăng tốc
bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
-F "[email protected]" \
-F 'settings={"mode":"speed","speedFactor":2.0}'Trích xuất một khung hình đơn
bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools \
-F "[email protected]" \
-F 'settings={"mode":"extract","extractMode":"single","frameNumber":5,"extractFormat":"png"}'Ví dụ phản hồi
json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/animation.gif",
"originalSize": 2345678,
"processedSize": 1234567
}Tuyến con Info
POST /api/v1/tools/image/gif-tools/info
Trả về siêu dữ liệu về một GIF động mà không xử lý nó.
Yêu cầu Info
bash
curl -X POST http://localhost:1349/api/v1/tools/image/gif-tools/info \
-F "[email protected]"Phản hồi Info
json
{
"width": 480,
"height": 320,
"pages": 24,
"delay": [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100],
"loop": 0,
"fileSize": 2345678,
"duration": 2400
}Ghi chú
- Sử dụng factory
createToolRoutetiêu chuẩn cho điểm cuối xử lý chính. - Điểm cuối info chỉ cần tải lên một tệp (không cần cài đặt).
- Ở chế độ
resize, nếupercentageđược cung cấp thì nó được ưu tiên hơnwidth/height. Việc thay đổi kích thước dùngfit: insideđể giữ tỷ lệ khung hình. - Ở chế độ
speed, độ trễ khung hình được chia cho hệ số tốc độ. Độ trễ tối thiểu mỗi khung hình là 20ms (giới hạn của đặc tả GIF). - Ở chế độ
reverse, tham sốspeedFactorcũng khả dụng để đồng thời điều chỉnh tốc độ trong khi đảo ngược. - Ở chế độ
extractvớirangehoặcall, đầu ra là một tệp ZIP chứa từng khung hình riêng lẻ. - Ở chế độ
rotate, mỗi khung hình được xử lý riêng và lắp ghép lại thành một hoạt ảnh. - Tham số
loopkiểm soát số lần lặp của GIF đầu ra. Dùng 0 để lặp vô hạn. - Trường
durationtrong phản hồi info là tổng thời lượng hoạt ảnh tính bằng mili-giây.
