Bagaimana cara mengetahui font mana yang berisi karakter khusus tertentu?


19

Unicode berisi beberapa "karakter" khusus yang tidak dapat ditampilkan oleh sebagian besar font. Saya ingin menggunakan salah satunya, kamera video.

Tampaknya memang ada karakter seperti itu, dan memiliki codepoint U + 1F4F9. Ketika saya mengunjungi http://graphemica.com/%F0%9F%93%B9 , saya melihatnya ditampilkan di halaman web dan di bilah URL Firefox. Jadi saya berasumsi bahwa saya memiliki setidaknya satu font pada sistem saya yang berisi mesin terbang.

url dengan tampilan mesin terbang kamera video dengan benar

Tetapi ketika saya menempelkannya ke Inkscape, saya mendapatkan kotak kosong untuk karakter yang tidak dikenal, bahkan jika saya memilih font yang biasanya memiliki banyak mesin terbang, seperti Arial.

Bagaimana cara mengetahui font mana yang telah saya instal yang dapat menampilkan "karakter"?


Jika font tidak dikenali (memberi Anda kotak kosong), kemungkinan font Anda tidak terpasang di sistem Anda. Karena itu, Anda perlu menginstalnya sebelum dapat digunakan.
CharlieRB

@CharlieRB font yang diinstal. Saya tidak dapat memilih untuk menggunakan font di Inkscape yang tidak diinstal. Hanya saja tidak memiliki mesin terbang yang sangat langka ini.
Rumi P.

BAIK. Anda mungkin ingin menjelaskannya dalam pertanyaan Anda; Anda telah menginstal font.
CharlieRB

1
Firefox dapat menggunakan font sendiri di Windows 7 dan versi sebelumnya karena tidak ada font untuk emoji di sistem tersebut. Font ini dalam <firefox>\fonts\EmojiOneMozilla.ttfdan tidak diinstal secara global
phuclv

Ada pertanyaan serupa yang telah dijawab di sini .
jdhao

Jawaban:



4

Saya benar-benar mengerti pertanyaan saat saya mengalami masalah yang sama:

Anda tahu komputer Anda menginstal font karena satu program menampilkan konten dengan benar, tetapi program lain menampilkan konten yang sama dengan kotak kosong karena tidak tahu font apa yang digunakan untuk menampilkan dengan benar. Dan Anda tidak ingin menelusuri semua font untuk menemukan font yang berisi karakter yang Anda inginkan.

Coba tempel teks / simbol yang disalin ke dalam dokumen Microsoft Word kosong. Konten akan muncul dengan benar jika Word diatur ke Keep Source Formatting secara default untuk teks yang disisipkan. Jika demikian, pilih konten dan menu font Word akan menunjukkan kepada Anda font sumber di komputer Anda yang berisi karakter yang diperlukan. Memang, mungkin ada yang lain, tetapi setidaknya ini adalah cara cepat dan kotor untuk menemukan satu font yang mungkin cocok.


Di Linux, hal yang sama dapat dilakukan dengan Writer.
Arthur Zennig

4

Skrip Python berikut akan mencetak semua font yang berisi karakter (diuji pada kotak Linux saya).

import unicodedata
import os

fonts = []

for root,dirs,files in os.walk("/usr/share/fonts/"):
    for file in files:
       if file.endswith(".ttf"): fonts.append(os.path.join(root,file))


from fontTools.ttLib import TTFont

def char_in_font(unicode_char, font):
    for cmap in font['cmap'].tables:
        if cmap.isUnicode():
            if ord(unicode_char) in cmap.cmap:
                return True
    return False

def test(char):
    for fontpath in fonts:
        font = TTFont(fontpath)   # specify the path to the font in question
        if char_in_font(char, font):
            print(char + " "+ unicodedata.name(char) + " in " + fontpath) 

test(u"๐Ÿ˜บ")
test(u"๐Ÿˆ")

Di mesin saya, ini memberi:

๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Bold.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Oblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-BoldOblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Bold.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSans-Oblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-Oblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSansCondensed-BoldOblique.ttf
๐Ÿ˜บ SMILING CAT FACE WITH OPEN MOUTH  in /usr/share/fonts/truetype/dejavu/DejaVuSans-BoldOblique.ttf
๐Ÿˆ CAT  in /usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.