Catatan dari tim tentang keahlian, format, dan keputusan kecil di balik hasil yang baik.
Wadah lossless, apa yang disimpan PNG
PNG memakai algoritme kompresi lossless DEFLATE. Ia menyimpan nilai RGBA setiap piksel persis seperti diberikan, menerapkan filter yang bisa dibalik pada tiap baris pindai, lalu mengompresi hasilnya dengan varian zlib. Lossless berarti nilai piksel yang didekompresi identik byte demi byte dengan aslinya. Untuk kasus JPG-ke-PNG, aslinya adalah piksel yang dihasilkan saat browser mendekode JPEG. Piksel terdekode itu sudah mencerminkan semua pendekatan yang dibuat JPEG saat penyimpanan aslinya, jadi PNG dengan setia menyimpan piksel terdekati itu, bukan pemandangan dunia nyata. Terukur, JPEG pada 1024x768 terdekode menjadi sekitar sebagai PNG, dan JPEG pada 3840x2160 tumbuh menjadi kira-kira . Kelipatan ini bertahan kira-kira lintas jenis isi karena rasionya mengikuti resolusi, bukan tingkat kualitas JPEG. Wadah lossless berharga karena apa yang dicegahnya, penurunan lebih lanjut, bukan karena apa yang dipulihkannya.
Mengapa kualitas JPEG tidak bisa dipulihkan
Kompresi JPEG membuang informasi secara permanen. Proses penyimpanannya menerapkan discrete cosine transform pada blok piksel 8x8, mengkuantisasi koefisien frekuensi yang dihasilkan ke himpunan yang lebih kecil, dan menyimpan nilai terkuantisasi itu. Langkah kuantisasi bersifat satu arah, karena koefisien yang tadinya 47 lalu dibulatkan ke 50 tidak bisa dikembalikan ke 47 belakangan, dan tidak ada catatan nilai asli yang bertahan di file. Saat browser mendekode JPEG, ia merekonstruksi piksel dari koefisien terkuantisasi, yang merupakan pendekatan nilai asli. Menyimpan ulang piksel terdekati itu sebagai PNG menghasilkan catatan lossless dari pendekatan tersebut, jadi PNG adalah representasi sempurna dari gambar yang sudah merosot. Ini bukan keterbatasan PNG atau alat ini, ini sifat mendasar kompresi lossy, di mana informasi yang dibuang saat penyimpanan lenyap. Memperbaiki kualitas JPEG mengharuskan dimulai dari aslian tak terkompresi atau RAW.
Pertumbuhan ukuran file yang terukur
Rasio ukuran dari JPG ke PNG bervariasi menurut isi gambar tetapi mengikuti pola yang dapat diperkirakan. Gambar fotografis dengan variasi tonal rumit tumbuh paling besar, karena transform JPEG disetel persis untuk isi semacam itu dan mencapai rasio kompresi tinggi, sementara kompresi lossless PNG tidak bisa menyamai rasio itu pada data piksel berisik. Pengukuran uji dari alat ini menunjukkan foto JPEG pada 1024x768 menghasilkan PNG , kira-kira pertumbuhan 6 kali, dan foto JPEG pada 3840x2160 menghasilkan PNG , kira-kira 3,3 kali lebih besar. Untuk gambar warna datar seperti tangkapan layar dan ikon, JPEG sudah kurang cocok dengan isinya dan file-nya cenderung lebih besar untuk kualitas setara, jadi PNG dari isi yang sama tumbuh kurang dramatis. Implikasi praktisnya langsung, jika ukuran file keluaran penting untuk kasus Anda, mengubah JPG ke PNG memperburuk keadaan, bukan memperbaikinya.
Transparansi, kemampuan versus isi
PNG mendukung saluran alfa 8-bit sebagai fitur wadah, di mana sebuah file bisa memuat nilai opasitas per piksel dari 0 (sepenuhnya transparan) sampai 255 (sepenuhnya buram). Saat JPG diubah menjadi PNG dengan menyimpan ulang lewat mesin gambar platform, PNG yang dihasilkan disetel sepenuhnya buram, dengan setiap piksel pada nilai alfa 255, karena JPG sumber memang tidak punya informasi transparansi sejak awal. Format PNG siap menampung data transparansi, file-nya hanya tidak memuat apa pun, karena tidak ada yang hadir di sumber. Menambahkan transparansi pada gambar mengharuskan pemrosesan terpisah, baik memasking latar di editor atau memakai langkah penghapusan latar otomatis. Alat background-remover yang dilatih mengenali subjek bisa menghasilkan PNG dengan alfa sungguhan dengan menolkan nilai alfa piksel latar setelah konversi.
Penanganan metadata EXIF
Pipa penyimpanan ulang membuang metadata EXIF, IPTC, dan XMP dari keluaran PNG di setiap browser. Ini berarti koordinat GPS, model kamera, tanggal pengambilan, string hak cipta, dan bidang XMP khusus apa pun yang ada di JPG sumber dihapus. Profil warna ICC menempuh jalur sedikit berbeda, di mana Chrome dan Safari mempertahankan tag profil ICC sRGB pada keluaran dan Firefox membuangnya bersama semua metadata lain. Hasil praktisnya adalah keluaran yang aman-sRGB lintas browser, tetapi profil gamut lebar seperti Display-P3 atau Adobe RGB hilang di Firefox. Untuk kebanyakan penggunaan web dan berbagi, penghapusan metadata bermanfaat, karena mengurangi ukuran keluaran sedikit dan membuang data lokasi dari foto. Untuk fotografi profesional atau alur kerja arsip yang mengharuskan metadata tertanam dipertahankan, tangani rantai metadata dengan alat khusus sebelum atau sesudah konversi format.
Privasi dalam praktik
Di mana konversi terjadi bergantung pada jumlah berkas. Untuk satu gambar, tidak ada data yang meninggalkan peramban, dan ini bisa diverifikasi secara langsung. Daftarnya tetap kosong selama pengodean. Untuk dua berkas atau lebih, RoundCut mengirimnya ke server kami, yang mengonversi, mengemas hasilnya, dan mengembalikan tautan unduhan. Tautan itu dan berkas hasil dihapus dalam sekitar 2 jam. Jalur satu gambar berjalan sepenuhnya di perangkat Anda, di luar jaringan, sementara jalur kumpulan menukarnya dengan kenyamanan mengonversi banyak berkas sekaligus. Untuk gambar berisi konten sensitif, seperti tangkapan layar dokumen pribadi atau foto dengan data lokasi, konversi satu per satu menjaga semuanya lokal.