Hubungi dukungan

Kami membalas melalui e-mail, biasanya dalam dua hari.

Google reCAPTCHA memeriksa kiriman ini untuk mencegah penyalahgunaan; data dikirim ke Google. Skrip hanya dimuat saat formulir ini dibuka.

← Semua artikel

Pemeriksaan label mengukur poin, bukan piksel

Sebuah pemeriksaan yang ditulis pada 27 Agustus melaporkan 196 label diagram terlalu lebar untuk gambar tempatnya berada. Menangani semuanya butuh waktu sehari. 103 dari 196 ternyata merupakan artefak dari pemeriksaan itu sendiri, dan pemeriksaannya diperbaiki pada minggu yang sama.

label yang dilaporkan terlalu lebar untuk diagramnya laporan pertama 196 pengukuran dan entitas diperbaiki 93 geometri dipindahkan 38 aturan tepi diperbaiki 3 empat label dipersingkat 0 5.093 label diukur di 77 tulisan dalam sebelas bahasa 103 dari 196 tidak pernah terlalu lebar — pemeriksaannyalah yang terlalu lebar

Poin bukan piksel

Pemeriksaan ini mengukur label dengan GD terhadap berkas font sungguhan:

$bb = imagettfbbox(13, 0, $font, $text);

13 adalah ukuran font dari stylesheet, dalam piksel. imagettfbbox() menerima ukurannya dalam poin. Pemeriksaan itu mengukur 13pt, yaitu 17,3px, sehingga setiap label keluar 96/72 — sepertiga — terlalu lebar.

Cara untuk memastikannya adalah bertanya kepada sesuatu yang benar-benar menggambar teks. Headless Chromium dapat memuat diagram yang sebenarnya dan melaporkan getComputedTextLength() untuk setiap label. Pada 13, keduanya berselisih sepertiga. Pada 13 * 72 / 96, yaitu 9,75, keduanya sesuai dengan selisih kurang dari setengah persen: 219 lawan 219 piksel untuk satu label, 561 lawan 559 untuk label yang lebih panjang.

Font-nya sejak awal sudah tepat

Pemeriksaan ini mengukur dengan DejaVu Sans, dan komentar di atasnya meminta maaf untuk itu: DejaVu lebih lebar daripada yang dilihat kebanyakan pembaca, jadi ambang batasnya disetel ke 92 persen untuk memberi ruang.

Setelah diukur, pilihan itu ternyata tepat sekali, tetapi karena alasan yang berbeda dari yang disebut komentar itu. Di antara font yang benar-benar dapat dijangkau oleh font stack situs ini, DejaVu yang paling lebar. Kalimat yang sama: DejaVu 219 piksel, Liberation 194, Cantarell 193, FreeSans 188. Pembaca di Windows atau Mac mendapat ruang lebih banyak, tidak pernah lebih sedikit. Pengukuran itu bukan pesimistis, melainkan kasus terburuk, dan memang itulah yang seharusnya diukur oleh sebuah pemeriksaan.

Apa yang tersisa setelah perhitungan

93 laporan bertahan setelah pengukuran diperbaiki. Lalu 33 di antaranya ternyata akibat sebuah aturan, bukan kesalahan: pemeriksaan itu menjaga jarak sepuluh unit dari tepi gambar dan memperlakukannya sebagai batas mutlak, sehingga label tahun yang berada tiga unit dari tepi dianggap terpotong. Tidak ada yang terpotong. Batasnya kini adalah tepi gambar itu sendiri, dan soal kerapatan menjadi urusan ambang 95 persen.

Sisanya memang nyata: label yang tertimpa batang, kolom yang terlalu sempit untuk kalimat berbahasa Rusia, keterangan yang menimpa keterangan di sebelahnya. Semua itu diperbaiki dengan memindahkan geometri, dan itu murah — geometrinya identik di kesebelas baris bahasa, jadi satu penggantian literal memperbaiki sebelas. Empat label memang lebih panjang daripada seluruh gambar, masing-masing dalam satu bahasa, dan label-label itu dipersingkat.

Yang berlaku secara umum

Pemeriksaan yang keliru ke satu arah menghasilkan pekerjaan, itulah sebabnya pemeriksanya patut diperiksa. Dua pertiga hari habis untuk diagram yang sebenarnya baik-baik saja — dan putaran yang sama memperbaiki diagram yang memang bermasalah, karena laporan yang salah berada di samping laporan yang benar.

Yang menuntaskannya bukan membaca kode dengan lebih cermat, melainkan mengukur pengukuran itu terhadap sesuatu yang independen yang menggambar teks sungguhan — dan itu butuh sepuluh menit. Pemeriksaan ini kini memakai ukuran 13 * 72 / 96 dan sejak itu berjalan atas dasar tersebut.

Iklan