DokumenGambarMediaAlat PDF

Optimizer SVG Online

Optimalkan dan minifikasi file SVG. Kurangi ukuran tanpa mengubah tampilan visual.

Processed in your browser

Optimalkan SVG untuk produksi web

100% privat

SVG Anda dioptimalkan di browser Anda. Tidak pernah diunggah ke server mana pun.

Hingga 90% lebih kecil

Menghapus bloat dari Illustrator, Inkscape, dan Figma. Hanya yang esensial yang tersisa.

Tampilan terjaga

Optimasi aman: tampilan visual tidak berubah dalam sebagian besar kasus.

Siap produksi

Unduh SVG yang dioptimalkan dan sisipkan langsung ke dalam HTML atau CSS Anda.

Tiga langkah, tanpa kerumitan

1

Unggah file SVG Anda

Seret atau pilih file .svg yang diekspor dari Illustrator, Inkscape, Figma, atau editor lainnya.

2

Optimasi otomatis

SVG dibersihkan dan diminifikasi: metadata yang tidak diperlukan, komentar, atribut redundan dihapus, dan path dioptimalkan.

3

Unduh SVG yang telah dioptimalkan

Bandingkan ukuran sebelum dan sesudah. Unduh SVG siap produksi dengan satu klik.

Ada pertanyaan?

Dalam sebagian besar kasus, tidak. Optimasi aman yang dilakukan oleh alat ini (penghapusan metadata, komentar, elemen tersembunyi, atribut redundan, dan penyederhanaan path tanpa kehilangan presisi) tidak mempengaruhi tampilan visual. Namun ada sejumlah kecil optimasi yang dapat menyebabkan perubahan dalam kasus tepi: mengurangi presisi desimal dalam koordinat dapat sedikit mempengaruhi bentuk path yang sangat detail (meski secara visual tidak terlihat dalam kebanyakan kasus), dan menghapus atribut CSS tertentu dapat mempengaruhi SVG dengan gaya yang kompleks. Untuk SVG yang akan digunakan sebagai ikon sederhana atau ilustrasi statis, optimasi sepenuhnya aman. Untuk SVG dengan animasi CSS atau JavaScript yang bergantung pada ID atau kelas tertentu, disarankan meninjau hasilnya sebelum digunakan dalam produksi.

Optimasi SVG menghapus semua yang tidak diperlukan untuk rendering visual. Dalam kategori metadata yang tidak diperlukan: deklarasi XML versi 1.0 saat tidak dibutuhkan, deklarasi DOCTYPE, komentar (kecuali komentar lisensi yang beberapa organisasi mensyaratkan dipertahankan), elemen metadata XML, dan namespace Inkscape, Adobe Illustrator, serta CorelDRAW. Dalam kategori atribut redundan: atribut dengan nilai default (seperti fill=black saat hitam sudah merupakan default), atribut style yang dapat dikonsolidasikan. Dalam kategori geometri: path dengan perintah redundan, subpath kosong, dan transform identitas (transform=translate(0,0)). Optimasi path mengonversi kurva Bezier ke bentuk yang lebih pendek bila memungkinkan dan mengurangi presisi desimal koordinat.

Penghematan bervariasi secara signifikan tergantung sumber SVG. SVG yang diekspor dari Adobe Illustrator terkenal kembung: dapat berisi puluhan kilobyte metadata aplikasi, layer tersembunyi, definisi yang tidak terpakai, dan path yang tidak dioptimalkan. Ikon sederhana yang diekspor dari Illustrator dengan ukuran 50 KB dapat dikurangi menjadi 3-5 KB setelah optimasi (pengurangan 90%+). SVG dari Figma lebih bersih tetapi masih punya ruang untuk perbaikan: pengurangan 30-50% adalah hal umum. SVG Inkscape memiliki metadata khusus aplikasi (namespace sodipodi dan inkscape) yang menambah beban yang tidak perlu untuk produksi: pengurangan 40-60% adalah khas. Untuk SVG yang sudah dioptimalkan secara manual, keuntungannya lebih kecil (10-20%). Secara rata-rata, SVGO melaporkan pengurangan median 55-65% dalam benchmark-nya.

Mutlak ya. SVG yang tidak dioptimalkan memiliki dampak langsung pada performa web. SVG 80 KB versus yang dioptimalkan 8 KB mewakili 10x lebih sedikit data yang harus diunduh, diurai, dan dirender oleh browser. Dampaknya sangat terlihat pada perangkat mobile dengan koneksi lambat. Untuk ikon SVG (yang paling umum di web), ukuran optimal setelah optimasi harus di bawah 1 KB untuk ikon sederhana dan di bawah 10 KB untuk ilustrasi kompleks. Selain pengurangan ukuran langsung, SVG yang dioptimalkan terkompresi lebih baik dengan gzip atau Brotli (algoritma kompresi HTTP), karena file yang lebih bersih memiliki entropi lebih rendah. Alat audit performa seperti Lighthouse dari Google memberi penalti pada aset yang tidak dioptimalkan, termasuk SVG berukuran besar, dalam skor Performa mereka.

Ya, optimasi agresif tertentu dapat merusak SVG yang memiliki interaktivitas. Kasus utama adalah: (1) Penghapusan ID: jika SVG memiliki animasi CSS atau JavaScript yang merujuk elemen berdasarkan ID mereka, menghapus ID tersebut akan merusak fungsionalitas. (2) Penghapusan class: mirip dengan kasus sebelumnya dengan kelas CSS. (3) Penggabungan group: menggabungkan kelompok g dapat mengubah urutan rendering atau menghilangkan titik referensi untuk animasi. (4) Inlining style: mengonversi kelas CSS ke atribut style inline dapat mengganggu CSS eksternal yang menargetkan kelas tersebut. Untuk SVG yang dianimasikan atau interaktif, rekomendasinya adalah menggunakan profil optimasi konservatif yang mempertahankan ID dan kelas, atau meninjau hasil secara manual.

SVGO (SVG Optimizer) adalah alat optimasi SVG yang paling banyak digunakan dalam ekosistem JavaScript/Node.js. Dibuat oleh Kir Belevich pada 2012 dan tersedia sebagai paket npm (npm install -g svgo). SVGO menggunakan arsitektur plugin: setiap jenis optimasi adalah plugin independen yang dapat diaktifkan atau dinonaktifkan secara individual. Plugin diorganisir dalam dua kategori: preset-default (plugin yang diaktifkan secara default, dianggap aman) dan plugin opsional (lebih agresif, dinonaktifkan secara default). SVGO v3 (dirilis 2022) adalah versi saat ini, dengan dukungan penuh SVG 2.0. Alat ini terintegrasi ke dalam sistem build paling populer: ada svgo-loader untuk webpack, vite-plugin-svgo untuk Vite, dan plugin untuk Rollup serta esbuild. Pada 2020, Jake Archibald membuat SVGOMG, antarmuka web untuk SVGO yang memungkinkan memvisualisasikan hasil dan menyesuaikan plugin secara interaktif.

Optimasi SVG: SVGO, path, viewBox, dan performa web

Format SVG (Scalable Vector Graphics) dikembangkan oleh W3C dan menjadi rekomendasi resmi pada 2001 dengan SVG 1.0, meskipun adopsi web yang luas datang dengan HTML5 dan dukungan native di semua browser utama sekitar 2012. SVG 1.1 (edisi kedua, 2011) adalah versi yang paling banyak didukung saat ini. Keunggulan utama SVG dibandingkan format raster seperti PNG atau JPG adalah kebebasan resolusinya: SVG 1 KB terlihat sempurna di layar 72 DPI, di iPhone Retina pada 458 DPI, dan di layar 8K pada 220 DPI, tanpa pikselasi. SVG yang dihasilkan oleh alat desain mengandung data yang tidak diperlukan dalam jumlah signifikan: Adobe Illustrator menyertakan namespace XML-nya sendiri, data sesi pengeditan dalam elemen foreignObject, dan dalam versi lama bahkan gambar pratinjau raster yang disematkan. Inkscape menambahkan namespace inkscape dan sodipodi, yang menyertakan informasi UI editor (posisi tampilan, zoom, panduan) yang sama sekali tidak diperlukan untuk rendering.

Optimasi path SVG adalah jenis optimasi dengan dampak terbesar pada ukuran file untuk SVG ilustrasi. Format path SVG menggunakan mini-bahasa dengan perintah seperti M (moveto), L (lineto), C (curveto dengan Bezier kubik), Q (curveto dengan Bezier kuadratik), A (arc), Z (closepath) dan varian koordinat relatifnya. Editor desain mengekspor path dengan presisi berlebihan: koordinat dengan 6-8 desimal sementara dalam praktiknya 1-2 desimal sudah cukup untuk kualitas yang tidak dapat dibedakan secara visual. Mengurangi presisi desimal dari 6 ke 1 dapat mengurangi ukuran path sebesar 60-70% tanpa perubahan visual yang terlihat. Atribut viewBox sangat penting dalam optimasi SVG: ini mendefinisikan sistem koordinat internal SVG dan harus selalu dipertahankan. SVG tanpa viewBox tidak dapat diskalakan dengan benar menggunakan CSS.

Dalam konteks pengembangan web modern, SVG yang dioptimalkan memiliki tiga penggunaan utama: ikon format sprite, ilustrasi HTML inline, dan gambar latar CSS. Untuk ikon, praktik sprite SVG (menggabungkan beberapa ikon dalam satu file SVG dengan elemen symbol yang direferensikan dengan use xlink:href) dipopulerkan oleh Chris Coyier di CSS-Tricks sekitar 2012. Framework seperti Heroicons (Tailwind CSS), Feather Icons, Lucide React, dan Phosphor Icons mendistribusikan ikon mereka sebagai SVG yang dioptimalkan dengan ukuran di bawah 1 KB. SVGO terintegrasi ke dalam bundler modern: Vite, menggunakan plugin vite-plugin-svgr, dapat mengimpor SVG sebagai komponen React yang sudah dioptimalkan dengan SVGO saat waktu build, menghilangkan kebutuhan optimasi manual dalam alur kerja pengembangan.