Tối ưu hóa mã nguồn SVG

Dọn dẹp siêu dữ liệu thừa, làm gọn đường dẫn path và nén dung lượng mã nguồn vector SVG

Tối ưu hóa mã nguồn SVG

Dọn dẹp siêu dữ liệu thừa, làm gọn đường dẫn path và nén dung lượng mã nguồn vector SVG

Cách thức hoạt động

1
Select Your File
Choose the file you want to process; your data is processed locally without uploads.
2
Configure Options
Adjust conversion, compression, or processing settings to suit your needs.
3
Process & Download
Run the task client-side in your browser and download the processed result.
Trung tâm kiến thức

Tối ưu hóa mã nguồn SVG: Làm sạch đường dẫn path và nén dung lượng vector

Khi bạn xuất các tệp đồ họa vector SVG từ các phần mềm chuyên nghiệp như Adobe Illustrator, Figma hay Inkscape, các tệp này thường bị gài kèm hàng chục dòng mã siêu dữ liệu rác không cần thiết: chú thích của phần mềm, định danh layer thừa (IDs), các thẻ nhóm <g> trống và tọa độ số thập phân có độ dài lên tới 10 chữ số sau dấu phẩy. Những thông tin thừa này làm phình to dung lượng tệp và làm chậm tốc độ hiển thị của trình duyệt.

Công cụ SVG Optimizer áp dụng các thuật toán tương tự công cụ SVGO tiêu chuẩn ngành ngay trên trình duyệt: loại bỏ các phần tử ẩn, làm tròn các tọa độ đường cong về số thập phân tối ưu, chuyển đổi các thẻ hình học cơ bản sang lệnh đường dẫn <path> thu gọn và nén dung lượng tệp lên tới 50% - 70% mà không làm suy giảm chất lượng hiển thị dù chỉ một pixel.

Công thức & Nguyên lý kỹ thuật

Mã XML SVG → Phân tích DOM Tree → Bộ lọc dọn dẹp SVGO (Bỏ Metadata, Làm tròn tọa độ, Gộp Path) → Mã SVG tinh gọn

Bộ phân tích XML loại bỏ các thẻ như <metadata>, <title>, các thuộc tính xmlns thừa và tối ưu hóa chuỗi lệnh vẽ path (ví dụ: chuyển đổi lệnh tuyệt đối sang tương đối nếu ngắn hơn).

Thực hành tốt nhất & Hướng dẫn thiết yếu

  • Tối ưu hóa trước khi nhúng trực tiếp (Inline SVG): Luôn đưa mã SVG qua bộ tối ưu hóa trước khi dán vào các component React hoặc HTML để giữ mã nguồn dự án gọn gàng.
  • Điều chỉnh độ chính xác số thập phân (Precision): Thiết lập làm tròn tọa độ ở mức 2 hoặc 3 chữ số thập phân là mức hoàn hảo để giảm dung lượng tối đa mà mắt người không nhận thấy sự xê dịch.
  • Loại bỏ thuộc tính kích thước cố định nếu cần: Giữ thuộc tính viewBox và lược bỏ thuộc tính width/height cố định nếu bạn muốn đồ họa co giãn linh hoạt bằng CSS.
  • Kiểm tra khung xem trước trực tiếp: Quan sát khung hiển thị so sánh trước và sau khi tối ưu để đảm bảo không có đường cong hay màu sắc nào bị lệch.

Câu hỏi thường gặp (FAQ)

Tối ưu hóa SVG có làm hình vẽ bị biến dạng không?
Không, miễn là bạn không đặt độ chính xác số thập phân quá thấp (mức khuyến nghị là 2 hoặc 3 chữ số thập phân). Hình ảnh sẽ giữ nguyên độ mượt mà tuyệt đối.
Tại sao dung lượng SVG sau khi tối ưu lại giảm được nhiều như vậy?
Bởi vì các phần mềm đồ họa như Illustrator thường nhúng rất nhiều thông tin lịch sử chỉnh sửa và định danh nội bộ vào tệp; việc loại bỏ các khối văn bản rác này giúp tiết kiệm rất nhiều byte dữ liệu.
Mã SVG tối ưu có tương thích với các trình duyệt cũ không?
Có. Mã xuất ra là chuẩn XML SVG 1.1 tiêu chuẩn của tổ chức W3C, được hỗ trợ hoàn hảo trên mọi thiết bị và nền tảng.
Tôi có thể tối ưu hóa tệp SVG có chứa hiệu ứng động (CSS Animation) không?
Có. Công cụ sẽ giữ nguyên các thẻ style và cấu trúc phân cấp cần thiết để các chuyển động CSS của bạn tiếp tục hoạt động mượt mà.