2016-01-11 17 views
23

Başlık oldukça güzel diyor. Tüm unicode formatlarını doğru şekilde ifade ederek, diğer karakterleri ve ligatürleri etkileyen kompozit karakterler ve karakterler ile bunu anlamak çok zor. Azami Unicode sembol desteği (Symbola, Code2001, diğerleri) ve belirli uçaklar veya karakter aralıkları için özel yazı tipleri (BabelStone Han, diğerleri) için tasarlanan fontlar var.Neden tüm Unicode gliflerini içeren bir yazı tipi yok?

Yazı tipleri için temel teknik ayrıntılardan çok şey bilmiyorum. Maksimum boyut var mı? Bu bir telif hakkı sorunu mu? Esasen ~ 110.000 tüm glifleri çok zor yeniden mı çiziyor? Stil endişelerini anlıyorum, ancak neden için glifleri olan bir 'varsayılan' yazı tipine geri dönmeyelim? Unicode.org'dalar, onları yeniden çizebilmek çok zor iş olurdu ama sonra her şey için garantili bir geri dönüş yazı tipine sahip olacaksınız. Önceden var olan bazı yazı tiplerine haklarınız varsa, bunları birleştirebilirsiniz ve bu çok yardımcı olacaktır. Böyle bir yazı tipi insanlığa büyük bir yardım olurdu ve bunun neden mevcut olmadığını ya da en azından açık kaynak bir çaba için iyi bir teknik neden göremiyorum, bu yüzden bana neden görünmez bir sebep olduğunu farz ediyorum. tamamlanamaz.

Bu neden nedir?

+0

teşekkür ederim. Ve Unicode'un * çok fazla * betiği vardır. –

+4

Stil, endişelendiğim bir şey değildi. "Neden her şeyi göremediğiniz bir geri dönüş yazı tipine sahip olmadınız, bu yüzden" glif yok ", çünkü bu işe yaramaz" ve çirkin bir glif hiçbir glif atmıyor. Mike'ın cevabında da belirtildiği gibi, bir yazı tahsilatının neden gerekli olduğunu ve çok iyi bir açık kaynak yazı tipi toplama çabalarının teknik nedenleri vardır. –

+0

Ağırlık kısıtlamaları bir yana, stil eşleme yazı tipi ailelerin tercih nedenidir. Çoğu CJK yazı tipinin, söz konusu tutarlılığı tutarlı bir şekilde yapmak için Latin harflerine garip gelmesi gerekir. Aktif olarak eşleştirilmedikleri zaman tuhaflıklarınız olur: ⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ benim evcil hayvanımdır. Adobe Garamond Premier —Pricey - Latin ve Yunanca vardır, ancak kimyacıların her ikisini birden kullanmaları için niyet etmediler - "α-ketoglutarate" birçok yazı tipinde tuhaf görünüyor. –

cevap

39

"Gerçekten ciddi misin?" Bir bakış açısıyla, bir programlama perspektifinden çok basit bir neden var: OpenType özellikleri sadece bir USHORT'un bir glif adres alanı sağlar, böylece bir yazı tipi yalnızca 16 bit glif değeri veya 65536 glif maks.

Bu yanıtın sonundaki Unicode, v8'in geçerli sürümü, 120737 atanmış kod noktası içeriyor veya modern yazı tipine neredeyse iki kat daha fazla sığdır. Aslında, Unicode, 2001'den beri, 49259'dan 94205'e kadar kod noktalarının sayısını artırmış olan Unicode 3.1 sürümü ile birlikte modern bir OpenType yazı tipine sığmıyor.

"Peki ya yazı tipi koleksiyonları?" Sorduğunu duydum. Neden birden çok yazı tipi kullanmıyorsunuz ve tüm unicode'u bu şekilde destekliyorsunuz? Şimdi, Adobe'nin Kaynak Pro'yu ve Google'ın Noto'yu (aynı yazı tipi) tanımladınız.

"Ne kadar zor olabilir" sorusuna gelince: Unicode'daki tüm glifler için, bu gezegende, her biri kendi dizgi kurallarına sahip olan 129 yazılı senaryo üzerinden, tek tip bir stil? İnanılmaz derecede zor. Yazı tiplerinin yalnızca resimler için harf içeren dosyalar olduğunu ve birisinin bir harf yazdığını, resmin gösterildiğini düşünebilirsiniz: yazı tipleri nasıl çalışır ve yazı tipleri 1980'lerin sonundan beri nasıl işlediler.

Modern yazı bir oyun ROM'un tipografik eşdeğerdir: emin, bu o ROM çalıştırmak için donanım veya yazılım olmaksızın çok kullanmak değil, ama aslında mesele ROM bulunan tüm şeyler. Benzer şekilde, modern yazı tipleri tüm dizgi bilgileri içerir. Sadece resimler, düzgün vektör grafikleri rasterleştirmek yönergeler ima OpenType desteklediği her yazılı komut dosyası için ayrı kural setleri, küçük noktalı render için olası bitmap yedekleri ile meta, metrik, keyfi dizileri için konumlandırma ve yer değiştirmelerin kuralları içerir doğal olarak herhangi bir piksel ızgarasına hizalı değil ve daha fazlası. Modern bir yazı tipi, bir font motorunun kod noktalarının dizilerinin nasıl yazılacağını anlatabilmesi ve (bir dizi) Unicode içeren yazı tipi (fontlarının) çok geniş bir ekip çalışması yapması için gülünç bir şekilde karmaşık bir uygulamadır.

Yani: "Neden orada tüm Unicode gliflere içeren bir yazı" olduğunu Yapabiliriz 2001 yılından bu yana teknik olarak imkansız oldu ve, font aileleri Unicode tümünü kapsayacak yapabilirim çünkü, ama 129 kendi kodlama kuralları ile farklı komut dosyaları, bu büyük bir ekip çalışmasıdır.

Ve bu gibi

:

Böyle bir yazı insanlık için büyük bir yardım olacaktır ve bunu yok veya en azından bir açık kaynak çaba için değil neden iyi bir teknik sebep göremiyorum Onu oluşturmak için, neden yapamayacağımı görünmez bir nedenden ötürü farz ediyorum. Onlar hakkında bilmiyordum çünkü

Sadece onlar bunlara aşina olan milyonlarca kişiyle, var olmayan anlamına gelmez. Onlar dışarı çıkmak, they're even open source var ve size yazı karakteri amatör çaba benzemiyor istiyorsanız o zaman her komut dosyası için bir uzmana ihtiyaç onları kılan kişilere =)

+1

Yani, Adobe Blank/sağladığınız bağlantıdaki diğer şeyler 'font aileleridir', çünkü tek bir font yeterince büyük olamaz? Bu, benim bahsettiğim görünmezlik sebebi olurdu. Bana onları işaret ettiğin için teşekkürler! –

+2

Adobe Blank tam bir Unicode uygulama tersini yapar, aşırı bir uzmanlık yazı şudur: ("boş") aynı, bekar, glif her Unicode kod noktası eşleştiren özel bir CMAP vardır. Her şeyi uygulamak yerine, hiçbir şey uygulamıyor ve boş bir resim ile hiçbir şeyi temsil etmiyor. Yazı tipi hata ayıklayıcısında, test sırasında geri dönüş olarak kullanılır: Adobe Blank'in "boş" (genişliğe sahip olduğunu görüyorsanız, metninizde görebilirsiniz) görürseniz, hata ayıkladığınız yazı tipinin bir şey eksik olduğunu bilirsiniz. –

+0

Ne garip bir yazı tipi. Noto'nun tam kapsama alanı yok (diğer şeylerin yanı sıra lineer A'yı da eksikler) ama zaten 500 MB'tır, bu yüzden onları gerçekten suçlayamam. –

İlgili konular