> [Site index](https://perfectvector.com/llms.txt) — available pages and descriptions.

# Potrace PNG ke SVG: Tangani Alfa, Pertahankan Lubang

> Konversikan PNG dengan Potrace setelah menyiapkan saluran alfa-nya. Ikuti alur kerja PGM yang telah diuji, bandingkan ambang batas, dan periksa latar belakang dan lubang dalam SVG.

Source: https://perfectvector.com/id/blog/potrace-png-to-svg

Language: id
Author: Irene Kim
Published: 2026-11-02T08:00:00+09:00

Untuk mengonversi PNG ke SVG dengan Potrace, siapkan bitmap skala abu-abu terlebih dahulu, lalu lacak dengan `potrace --svg`. Untuk karya seni gelap pada piksel transparan, gabungkan gambar ke dalam matte putih sebelum menyimpan bitmap. Periksa bentuk ambang batas dan bukaan dalamnya sebelum menerima SVG.

Standar Potrace 1.16 membaca PBM, PGM, PPM dan BMP, bukan PNG secara langsung. [Manual resmi](https://potrace.sourceforge.net/potrace.1.html)-nya menjelaskan operasi penelusuran monokrom: bayangan antara menjadi hitam atau putih. Alur kerja di bawah ini menciptakan geometri padat dengan wilayah kosong, alih-alih mempertahankan nilai alfa berkelanjutan PNG.

Jika Anda lebih menyukai alur kerja browser untuk gambar yang sudah Anda miliki, PerfectVector menawarkan konversi gambar-ke-jalur dan pratinjau gratis. [Mulai gratis dengan gambar Anda sendiri](https://perfectvector.com/id/image-to-vector), lalu bandingkan siluet, bukaan kecil, dan warnanya dengan sumbernya. Buka kunci hasilnya sebelum mengedit atau mengekspor. Resep Potrace lokal tetap berguna ketika Anda menginginkan pra-pemrosesan yang eksplisit dan pengaturan perintah yang dapat diulang.

## Apa yang Anda butuhkan sebelum menelusuri

Gunakan Potrace yang dapat dieksekusi, Python 3 dengan Pillow, dan PNG asli. Resep ini diterapkan dengan **Potrace 1.16 dan Pillow 11.3.0**. Simpan salinan masukan dan kerjakan di folder terpisah sehingga setiap varian ambang batas memiliki nama file berbeda.

Kasus awalnya adalah logo, ikon, atau gambar gelap dengan latar belakang terang atau transparan. Jika subjek Anda terang di atas gelap, tentukan cara membalikkan atau menyiapkan gambar sebelum menerapkan resep ini. Untuk alur kerja editor interaktif, lihat [Bitmap Jejak Inkscape](https://perfectvector.com/id/blog/inkscape-trace-bitmap).

**matte** adalah latar belakang solid yang digunakan untuk mengatasi piksel transparan sebelum dijiplak. **ambang batas** adalah batas kecerahan yang membagi gambar yang disiapkan menjadi latar depan dan latar belakang. Pilihan tersebut terjadi sebelum kontur menjadi geometri SVG.

## 1. Selesaikan transparansi sebelum menyimpan bitmap

PNG menyimpan warna dan opacity secara terpisah. Saluran alfa menjelaskan opasitas setiap piksel. [Spesifikasi PNG](https://www.w3.org/TR/png-3/) menjelaskan representasi ini; piksel yang sepenuhnya transparan masih dapat membawa nilai RGB. Menghapus saluran alfa tidak menggabungkan piksel tersebut ke latar belakang putih yang mungkin Anda lihat di penampil gambar.

Untuk tanda gelap, letakkan gambar di atas putih dengan sengaja. Cuplikan Python ini membuka `artwork.png`, menggabungkannya menjadi gambar putih berukuran sama, mengonversi hasilnya menjadi skala abu-abu dan menyimpan `artwork.pgm`:

```python
from PIL import Image

src = Image.open("artwork.png").convert("RGBA")
matte = Image.new("RGBA", src.size, "white")
gray = Image.alpha_composite(matte, src).convert("L")
gray.save("artwork.pgm")
```

[`alpha_composite` dokumentasi](https://pillow.readthedocs.io/en/stable/reference/Image.html#PIL.Image.alpha_composite) Pillow mendefinisikan gambar kedua sebagai gabungan dari gambar pertama. Kedua gambar di sini memiliki dimensi dan mode RGBA yang serasi.

Buka PGM yang telah disiapkan sebelum menjiplak. Latar belakang luarnya harus berwarna putih, latar depannya seharusnya gelap, dan celah-celah penting terlihat. Persegi panjang hitam pada tahap ini merupakan masalah prapemrosesan; mengubah aturan pengisian SVG nantinya tidak dapat memulihkan pembukaan yang tidak pernah mencapai pelacak.

**Ilustrasi**

![Ilustrasi cincin hitam pada transparansi PNG, dikomposisikan ke matte putih, kemudian direpresentasikan sebagai geometri SVG dengan bagian tengah terbuka](https://perfectvector.com/blog/potrace-png-to-svg/alpha-pipeline.webp)

*Selesaikan piksel transparan raster dengan matte yang disengaja sebelum memilih geometri latar depan. Pembukaan terakhir memungkinkan tampilan latar belakang terlihat.*

## 2. Telusuri PGM yang telah disiapkan

Jalankan ini di folder yang berisi `artwork.pgm`:

```bash
potrace artwork.pgm --svg --blacklevel 0.5 --turdsize 2 --output artwork.svg
```

`--blacklevel 0.5` memilih batas skala abu-abu. `--turdsize 2` menjaga penekanan bintik kecil default Potrace tetap eksplisit. Gunakan nama keluaran baru saat Anda mengubah pengaturan, lalu bandingkan file daripada menimpa referensi Anda berulang kali.

Ubah satu kontrol pada satu waktu:

| Kontrol        | Apa yang harus diulas                                                               |
| -------------- | ----------------------------------------------------------------------------------- |
| `--blacklevel` | Apakah tanda samar menjadi latar depan dan bukaan sempit tetap kosong               |
| `--turdsize`   | Apakah bentuk kecil yang terisolasi merupakan kebisingan atau detail yang disengaja |
| `--alphamax`   | Perawatan sudut; terlepas dari namanya, ini bukanlah kontrol opacity                |

Ambang batas tingkat hitam yang lebih tinggi dapat menyertakan lebih banyak piksel abu-abu terang di latar depan. Itu bisa memperkuat garis samar atau menutup celah cahaya. Nilailah bitmap yang telah disiapkan dan kontur yang dihasilkan secara bersamaan. Pemulusan tidak dapat merekonstruksi penghitung setelah ambang batas terisi.

## Apa yang ditunjukkan oleh dua gambar uji asli

Kami membuat dua 256 × 256 PNG yang dikontrol dan menjalankan perintah prapemrosesan dan Potrace di atas. Salah satunya adalah cincin hitam dengan piksel transparan di luar dan di dalamnya. Yang lainnya adalah tanda gelap buram dengan penghitung abu-abu sempit, bukaan tertutup di dalam tanda tersebut. Kami memeriksa SVG yang dihasilkan dengan penyaji dan memeriksa transparansi tengah dan luarnya.

| Masukan dan persiapan                                                            | Hasil SVG yang diamati                                                           |
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| Cincin transparan, alfa dibuang sebelum konversi skala abu-abu                   | Kanvas hitam berisi; bagian luar dan bukaan yang dimaksudkan menjadi latar depan |
| Cincin yang sama, digabungkan menjadi warna putih sebelum konversi skala abu-abu | Bagian luar dan tengahnya kosong; cincin itu tetap terisi                        |
| Penghitung abu-abu sempit, komposit putih, tingkat hitam 0,5                     | Konternya tetap terbuka                                                          |
| Gambar counter yang disiapkan sama, blacklevel 0.8                               | Konter terisi                                                                    |

Piksel tak kasat mata pada kontrol cincin membawa nilai RGB hitam. Mengabaikan alpha akan mengekspos nilai-nilai tersebut ke ambang batas. Versi komposit putih menyelesaikannya menjadi putih terlebih dahulu. Ini menjelaskan kotak hitam sampel itu; bukan berarti setiap PNG akan mengalami kegagalan yang sama.

Tes penghitung menjaga input dan pengaturan lainnya tetap konstan. Hanya ambang batasnya yang berubah. Hasilnya menunjukkan mengapa jejak yang terlihat lebih gelap belum tentu merupakan jejak yang lebih baik. Periksa fitur yang Anda perlukan daripada memilih pengaturan dengan siluet terberat.

Ini adalah pemeriksaan digital dari dua perlengkapan asli, tanpa gambar raster tertanam dalam keluaran SVG-nya. Kami tidak membandingkan kualitas Potrace dengan PerfectVector, mengimpor file ke pemotong atau menguji hasil fisik.

## 3. Periksa lubang dan latar belakang pada SVG yang disimpan

Tempatkan SVG di atas latar belakang yang kontras. Latar belakang tersebut harus terlihat melalui area luar dan setiap bukaan yang diinginkan. Cat putih bisa menyerupai lubang di halaman putih, jadi gambar mini saja tidak cukup.

[jalur gabungan](https://www.w3.org/TR/SVG2/paths.html) SVG dapat menggambarkan kontur luar dan bukaan dalam dalam satu objek. Jika bukaan sudah tidak ada pada geometri yang ditelusuri, kembali ke PGM dan ambang batas. Jika ada di satu perender tetapi terisi setelah impor, selidiki interpretasi jalur aplikasi penerima. [Panduan pemecahan masalah lubang SVG](https://perfectvector.com/id/blog/svg-holes-fill-in) memisahkan kasus-kasus tersebut.

Periksa file yang disimpan untuk:

* siluet yang diinginkan dan celah kecil;
* ruang kosong nyata di luar tanda dan di dalam penghitungnya;
* bintik-bintik liar yang tidak boleh menjadi benda;
* ukuran dokumen yang sesuai dengan alur kerja tujuan;
* jalur daripada salinan PNG yang disematkan.

Jika hanya latar belakang yang terlihat salah, gunakan [diagnosis latar belakang SVG transparan](https://perfectvector.com/id/blog/transparent-background-svg) sebelum menghapus setiap objek berwarna putih. Jika fitur kecil benar-benar tidak ada pada sumbernya, gunakan dokumen asli yang lebih besar atau gambar ulang detail tersebut. [panduan kualitas sumber](https://perfectvector.com/id/blog/png-to-svg-without-losing-quality) menjelaskan batasan tersebut.

## Kapan alur kerja monokrom ini cocok

Potrace cocok dengan tanda yang dapat diekspresikan sebagai siluet penuh dan bukaan yang disengaja. Pertahankan raster ketika bayangan lembut atau opacity parsial adalah bagian dari karya seni yang perlu Anda pertahankan. Untuk beberapa warna yang bermakna, gunakan alur kerja vektorisasi berkemampuan warna atau siapkan lintasan terpisah yang disengaja; perintah monokrom tunggal ini tidak membuat palet warna.

Anda juga dapat menggunakan editor vektor untuk menggambar ulang kontur kritis. Penelusuran otomatis memberikan bentuk kandidat, dan tujuan penggunaan Anda menentukan apakah akan menyimpan atau mengeditnya.

## Pertanyaan Umum

**Dapatkah Potrace membuka PNG secara langsung?**
Standar Potrace 1.16 menerima input PBM, PGM, PPM dan BMP. Dekode PNG dengan alat gambar lain terlebih dahulu, jadikan perlakuan transparansinya eksplisit, dan simpan bitmap yang didukung sebelum ditelusuri.

**Apakah Potrace menjaga transparansi PNG?**
Alur kerja monokrom menciptakan geometri terisi dan area kosong. Itu tidak mempertahankan nilai alpha berkelanjutan PNG. Gabungkan piksel transparan ke matte yang disengaja sebelum melakukan ambang batas, lalu verifikasi wilayah kosong SVG melalui latar belakang yang kontras.

**Apakah alphamax merupakan setelan alfa PNG?**
Tidak. Alphamax Potrace mengontrol perlakuan sudut pada kurva yang dilacak. Ini tidak menentukan bagaimana saluran opacity PNG digabungkan sebelum ditelusuri.

**Mengapa lubangnya hilang?**
Periksa apakah bukaan masih terlihat pada bitmap yang telah disiapkan dan ambang batas yang dipilih. Jika ambang batas memenuhinya, ubah persiapan atau batas dan telusuri kembali. Jika SVG berisi pembukaan tetapi hanya aplikasi penerima yang mengisinya, periksa jalur gabungan dan penanganan aturan pengisian di sana.

## Sumber

1. [Potrace — Manual](https://potrace.sourceforge.net/potrace.1.html) — Format masukan yang didukung, ambang batas monokrom, keluaran SVG, dan opsi perintah bernama.
2. [Pillow — Modul gambar](https://pillow.readthedocs.io/en/stable/reference/Image.html#PIL.Image.alpha_composite) — Pengomposisian gambar RGBA dan urutan yang digunakan dalam cuplikan persiapan.
3. [W3C — Spesifikasi PNG](https://www.w3.org/TR/png-3/) — Sampel warna dan representasi alfa dalam gambar PNG.
4. [W3C — Jalur SVG](https://www.w3.org/TR/SVG2/paths.html) — Jalur gabungan dan kontur bagian dalam yang dapat menggambarkan bukaan.

***

[Mulai gratis dengan gambar Anda sendiri di PerfectVector](https://perfectvector.com/id/image-to-vector), lalu periksa siluet dan bukaan bagian dalamnya dengan sumbernya sebelum memilih langkah pengeditan berikutnya.

## Explore

- [Read the HTML article](https://perfectvector.com/id/blog/potrace-png-to-svg)
- [Tracing Gambar SVGcode: Periksa Bentuk Hasil Ekspor](https://perfectvector.com/id/blog/svgcode-image-tracing.md)
- [ImageMagick PNG ke SVG: Periksa Delegate Tracing](https://perfectvector.com/id/blog/imagemagick-png-to-svg.md)
- [Product facts](https://perfectvector.com/product-facts.md)
- [FAQ](https://perfectvector.com/faq.md)
- [Pricing and credits](https://perfectvector.com/pricing.md)
