
Qiji-font (qijiti) adalah:
? Pernyataan: Font saya telah diedarkan di internet baru -baru ini, tetapi mereka semua disalahpahami sebagai "gaya 'Dongqi Ji". Nama saya Lingdong , dan fontnya adalah qiji ; Jika Anda ingin menjadi yang terakhir, Anda juga harus menggunakan " gaya Lingdong Qiji " sebagai hal yang paling penting, jadi saya harap Anda bisa mengetahuinya. ? ♂️

| Mesin terbang unik | Karakter tertutup* | Buku yang dipindai |
|---|---|---|
| 4569 | 5916 | Puisi Li Changji/Penjelasan Huain Honglie |
* Bentuk yang disederhanakan kembali ke bentuk tradisional, varian tradisional yang lebih umum jatuh kembali ke bentuk varian yang kurang umum.
Langkah I: Unduh PDF resolusi tinggi (dari shuge.org) dan pisahkan halaman menjadi gambar.
Langkah II: Letakkan kisi secara manual di atas setiap halaman untuk menghasilkan kotak pembatas untuk karakter (berpotensi diganti dengan algoritma deteksi sudut otomatis).

Langkah III: Hasilkan masker rendah poli untuk setiap karakter di grid, dan simpan thumbnail (menggunakan opencv). Pertama, saluran merah dikurangi dari skala abu -abu, untuk membersihkan anotasi yang dicetak dengan tinta merah. Selanjutnya, gambar diatur dan dimasukkan ke dalam algoritma penelusuran kontur. Metrik kemudian digunakan untuk membuang bentuk yang tidak mungkin menjadi bagian dari karakter yang diminati. (Langkah ini tidak menghasilkan mesin terbang akhir, hanya ekstraksi cepat dan kotor untuk pemrosesan perantara.)

Langkah IV: Beri makan setiap thumbnail satu per satu ke dalam OCR Cina saraf-Net untuk mengenali karakter (saat ini menggunakan Chinaocr/Darknet-ococ, laju deteksi rendah, akurasi biasa-biasa saja, sangat lambat pada CPU, mencari alternatif yang lebih baik).
Langkah V: Secara manual menilai output OCR: Pilih contoh paling tampan dari karakter yang diberikan, dan bendera yang salah diakui karakter.

Langkah VI: Untuk set karakter akhir, secara otomatis menghasilkan rendering raster halus dari setiap karakter. Setiap karakter ditempatkan di pusat "visual" dengan menghitung piksel secara kumulatif dari kiri dan kanan, serta atas dan bawah, sehingga "berat" karakter berada di tengah -tengah, sebagai lawan dari memusatkan kotak pembatas. Dua metode ambang batas digunakan, ambang global melebar dan bertindak sebagai topeng untuk ambang adaptif, sehingga menjaga detail sambil menghalangi booger di sekitarnya.

Langkah VII: Potrace Perangkat Lunak Penelusuran Raster-ke-Vektor digunakan untuk mengubah rendering raster menjadi SVG. Perpustakaan Python FontForge digunakan untuk menghasilkan file font akhir. Selesai!
Ketika jumlah karakter tumbuh, prosedur di atas akan menjadi kurang dan kurang efisien, karena karakter baru yang sebelumnya tidak terlihat yang diperoleh dari setiap buku yang diproses akan lebih jarang dan lebih jarang. Metode alternatif yang melibatkan mengklik hanya pada karakter yang tidak terlihat untuk memilihnya sedang dibangun.
Persyaratan:
pip3 install opencv-python )brew install fontforge ) Kode utama terkandung dalam /workflow , dan sesuai dengan langkah -langkah yang dijelaskan di atas. Dokumentasi untuk kode belum dilakukan (segera), jadi jangan ragu untuk menanyakan apakah tertarik. Seperti yang mungkin Anda perhatikan, ada banyak pekerjaan yang terlibat dalam membuat font Cina, jadi kontribusi sangat disambut :)
Lembar semua mesin terbang unik diurutkan berdasarkan titik masuk Unicode, klik untuk memperbesar. (Ini adalah JPEG yang hilang, untuk PNG lengkap, periksa di sini, untuk SVG, jalankan node workflow/make_sheet.js )
