Developer Toolbox

gzip (DEFLATE)

Lihat cara gzip memperkecil teks: pengulangan menjadi salinan pendek, dan kode Huffman memberi simbol yang sering muncul lebih sedikit bit.

  • 32 KB
  • 3-258 byte
  • hingga 15 bit
  • bingkai gzip 18 byte
Istilah lain di halaman ini
  • Literal: karakter yang ditulis apa adanya, karena tidak ada pengulangan 3 karakter atau lebih yang dimulai di posisinya.
  • Bebas prefiks: tidak ada kode yang menjadi awal kode lain, sehingga aliran kode bisa dibaca kembali tanpa pemisah.
LZ77 dan Huffman, langkah demi langkah 0 / 19 langkah

Teks ini berisi 23 karakter, 184 bit tanpa kompresi. Kompresor membacanya dari kiri ke kanan dan di setiap posisi bertanya apakah yang berikutnya sudah pernah muncul.

Spasi: putar atau jeda. Panah kiri dan kanan: melangkah. Home dan End: lompat.

Coba ini: Ketik huruf yang sama berkali-kali. Satu salinan dengan jarak 1 mencakup semuanya, karena salinan boleh tumpang tindih dengan teks yang dihasilkannya.

Cara kerjanya

gzip menjalankan DEFLATE dalam dua tahap. LZ77 menelusuri teks dan, di setiap posisi, mencari deretan byte terpanjang yang sudah muncul dalam 32 KB terakhir; alih-alih mengulanginya, ia menulis sepasang angka: berapa byte yang disalin (3-258) dan seberapa jauh ke belakang letaknya. Semua yang tersisa, yaitu literal dan pasangan tadi, lalu ditulis dengan kode Huffman: simbol yang sering muncul mendapat kode pendek dan yang jarang mendapat kode panjang. gzip membungkus hasilnya dengan header 10 byte dan trailer 8 byte yang berisi checksum CRC-32.

Kapan ini pilihan yang tepat

gzip memampatkan teks yang banyak berulang: HTML, CSS, JavaScript, JSON, log, CSV. Semua browser dan server memahaminya, cepat di setiap level, dan menjadi pilihan default yang aman untuk mengompresi respons secara langsung. Data yang sudah terkompresi, seperti JPEG, PNG, WOFF2, atau ZIP, tidak punya pengulangan lagi, jadi gzip hanya menambahkan bingkainya.

Pada teks Anda sendiri

Dua tahap yang sama, dikerjakan oleh gzip sungguhan (level 6) pada teks yang lebih panjang. Tempel teks Anda sendiri, atau bawa dari alat Kompresi Gzip & Brotli.

Masukan