Neden Unicode'un özel karakterlerini Romen rakamları için kullanmalıyım?


43

Bu, Romen rakamları için Unicode karakterleri hakkındaki bu soru yorumunda ortaya çıkan bir soruyu cevaplamak içindir:

Bu neden ai, ai-ai, ai-ai-ai, vee-ai, vb. Yazmanın olağan yolu üzerinde gerekli veya tercih edilir?

Unicode'un Sayı Formları bloğunda, baştan başlamak için, ilk bakışta standart büyük harfli latin harflerine veya bunların kombinasyonlarına çok benzeyen Romen Rakamları için kod noktaları vardır (U + 2160 - U + 217F). Örneğin, U + 2165 (Romen Rakamıyla Altı), VI (Latin Büyük Harf V ve Latin Büyük Harf I) 'e çok benziyor .

Bir, ikincisi örneğin bu rakamları temsil etmek ve kullanmak yazın olmamalıdır neden Böylece, soru ortaya çıkıyor Louis VIIyerine Louis Ⅶ. Açıkçası, hiçbir özel karakter kullanmak, onları desteklemeyen fontlarla uyumluluk sorunlarından kaçınır. Ancak, metnin bu karakterleri destekleyen bir fontla oluşturulacağını bilsem bile, neden bunları kullanıyorum?

Yanıtlar:


56

Birçok yazı tipinde, Romen rakamları için Unicode karakterlerini kullanmak ve bunları sadece yıldız Latin harflerinden oluşturmak arasında bir fark bulmazsınız. Örneğin, FreeSans ile oluşturulan Louis VII(üstte) ve Louis Ⅶ(altta, Roma rakamları için kod noktalarını kullanarak) gösterir:

görüntü tanımını buraya girin

Kasıtlı olmayan kasıtlı küçük bir fark dışında, çıktı aynıdır.

İşte DejaVu Sans ile oluşturulan aynı metin:

görüntü tanımını buraya girin

Karakterler hala aynı görünse de boşluklarda önemli bir fark var. İkincisinin Romen rakamları için tercih edilip edilmeyeceği bir zevk meselesi olabilir, ancak kesinlikle normal büyüklükteki harfler için iyi bir çekirdek seçimi olamaz.

Linux Libertine bir adım daha ileri gidiyor:

görüntü tanımını buraya girin

Burada Romen rakamları büyük harflerden biraz daha küçüktür, bu nedenle fontun Arap rakamları ile eşleşir. En önemlisi, birbirlerine bağlı Romen rakamlarında bulunan bir özelliği yeniden üretiyorlar.

Şimdi, bazıları hala yukarıda herhangi bir gelişme olmadığını veya çabaya değmeyeceğini iddia edebilir. İşte Unicode karakterlerini kullanmamanın korkunç sonuçlar doğuracağı bir durum:

görüntü tanımını buraya girin

(Sayıların küçük boyutunun bazı gerçek tarihi dizgileri yansıttığına dikkat edin.) Komut dosyası veya kaligrafi yazı tipleri için benzer bir şey oluşabilir.

Romen rakamları için belirli Unicode noktaları olmadan, ikinci problemin çözülmesi ancak şunlarla mümkün olacaktır:

  • Büyük harfler dizisinin romen rakamı olup olmadığını algılamaya çalışan karmaşık bir OpenType özelliği (veya benzeri) kullanmak. Bu kaçınılmaz olarak, geçerli bir Romen rakamı olacak kelimelerle de sorunlara neden olacaktır.

  • Basit bir OpenType özelliği kullanarak, her Romen rakamı için manuel olarak etkinleştirilmesi gerekir.

  • Unicode'un Özel Kullanım Alanını Kullanma. Her ikisi de Romen rakamlarını destekleyen iki yazı tipi arasında geçiş yaparken bile uyumluluk sorunlarının ortaya çıkması muhtemeldir.

Unicode'nin bakış açısına göre, büyük Latin harfleri ve Romen rakamları arasındaki büyük anlamsal fark, zaten Romen rakamlarının ayrı bir kodlaması için yeterli olmalıydı.


Romen rakamları hangi uzunluklara kadar kısaltmalar ve ilkçiliklerden farklı bir problem yaratır ki, her ikisi de bir yazı tipinin bir küçük küçük harf kümesi içererek uygun şekilde ele alınmasını sağlar mı? Küçük harflerden ziyade büyük harf kullanarak "VII" nin gösterilmesi gereken senaryoların "NATO" veya "PM" nin de aynı şekilde gösterileceği senaryolarla aynı olmasını beklerdim. "VII" ile ancak "VIP" ile çapraz çubuğu bağlamanın bir yolu olması güzel olsa da, sayılar metin içinde kullanıldığında çapraz çubukların bağlanması gerektiğinden emin değilim .
Supercat

Çok iyi genişletilmiş anlambiliminizi biraz ekledi ancak cevabınıza dahil etmek istiyorsanız soa yapmaktan çekinmeyin ve benimkini silmekten çekinmeyin.
joojaa

@supercat: Neyi hedeflediğinizden tam olarak emin değilim, ancak tecrübelerime göre modern tipografide, Romen rakamları her zaman sermaye büyüklüğüne sahipken, Almanca dışındaki dillerde ise büyük harf kısaltmaları için küçük büyük harfler kullanmak düşünülebilir. Blackletter tipografisinde, tüm kısaltmalar ve romen rakamları için bir roman fontu kullanırsınız, ancak bazen daha küçük romen rakamları (yukarıdaki gibi) ve bazı çok özel durumlar için, blackletter all-caps kullanırsınız.
Wrzlprmft

@Wrzlprmft: Romen rakamlarının "PM" veya "NATO" gibi şeyler ile aynı boyutta basılmasını beklerdim; Bazı bağlamlarda, bu tür şeyler tam boyutlu başkentler olarak basılır, ancak bazılarında onları çok fazla öne çıkarır. Bir fontun tasarımı, fontun geri kalanıyla ilgili olarak "PM" veya "NATO" için uygun olan bir büyük harf kümesine sahip olsaydı, Romen rakamları için de uygun olacağını düşünürdüm.
supercat

@supercat: Normal roman yazı tipi için, evet (bunun yapılması en iyi şey olup olmadığı tartışılabilir). Peki ya blackletter ve script fontları? Ayrıca, bundan ne sonuç çıkarıyorsunuz?
Wrzlprmft

27

TL; DR Unicode konsorsiyumu, Doğu Asya tipografisiyle uyumluluk için dahil edilen rakamların değil, mümkün olduğunca latin harfinin kullanılmasını önerir.

Tam hikaye: (yukarıdaki iddianın gerekçesiyle)

Bazı Doğu Asya tipografisi yapmadığınız sürece, unicode'dan (Arkaik olmayan) Romen rakam karakterlerini kullanmak (ha + 2160 - U + 217F).

Bu karakter, Unicode öncesi Doğu Asya standartlarına uyumluluk için dahil edilmiştir. Bu karakterler Doğu-Asya metninin yukarıdan aşağıya dizilmiş olduğu yerlerde dikey kalırken, genellikle Latince karakterlerdeki metinler (örn. Adlar) bu bağlamda yanlara yazılmıştır.

Unicode standardının son versiyonundan alıntı yapmak için (v 7.0, bölüm 22, s. 20) :

Roma rakamları. Çoğu amaç için, Romen rakamlarını uygun Latin harflerinin dizilerinden oluşturmak tercih edilir. Bununla birlikte, Romen rakamlarının 12 ile artı L, C, D ve M arasındaki büyük ve küçük harf çeşitleri, Doğu Asya standartlarına uygunluk için Sayı Formları bloğunda (U + 2150..U + 218F) kodlanmıştır. Latin harflerinin dizilerinin aksine, bu semboller dikey düzende dik durur. Ek olarak, bazı yerlerde, kompakt tarih biçimleri ay için Romen rakamları kullanır, ancak tek bir karakterin kullanılmasını bekleyebilir.

Dolayısıyla teoride, Romen Rakamları ile harf arasındaki fark, italik, font değişikliği veya isteğe bağlı bitişik harfler gibi zengin bir metin meselesidir. Bununla birlikte, @Wrzlprmft'in gösterdiği gibi, bazı fontlar onu iyi bir tipografi tutarken her Roma rakamı için bir font değişikliğini önlemek için kullanır.

XII için değil, XIII için olmayan bir karakterin varlığı, aynı sayıdaki birkaç farklı kodlamanın olduğu anlamına gelir; bu, metin aramada zorluklara yol açar: Louis XII ve Louis XIII hakkında yazıyorsanız, muhtemelen XIII'yi X + I + olarak yazacaksınız. Ben + I, ama XII'yi tek karakter olarak yazacak mısınız? Ya da XIII ile tutarlı bir ekrana sahip olmak için X + I + I? Romen Rakamıyla Karakterleri kullanırken bu soruya tek bir iyi cevap yoktur ve bu nedenle Unicode konsorsiyumu, rakamları değil, mümkün olduğunda Latin harflerini kullanmanızı önerir.

Düzenleme: TL; DR iddiasını başlangıçta ekledi


9
" Unicode konsorsiyumu , rakamları değil, mümkün olduğunda Latin harflerini kullanmanızı önerir." Bu, şu anda olduğundan daha belirgin olmalıdır.
Ixrec

1
Unicode anlambilimi açısından bakıldığında bu, buradaki en iyi cevaptır. Romen rakamı karakterlerini tercih etmek için bazı yazı tiplerinin pratik nedenleri olabilir ve bu elbette bağımsız bir grafik tasarım düşüncesidir, ancak anlamsal olarak her zaman yanlıştır.
R. ..

13

Nasıl göründüğü açısından bakıldığında, çok fazla bir fark olmayabilir. Bu nedenle, yalnızca basılı materyali yayınlarsanız, Wrzlprmft'ün mükemmel cevabına işaret ettiği gibi bazı yazı tipleri dışında hiçbir fark yoktur.

Anlambilim önemlidir

Anlamsal fark çok büyük. Romen rakamları kullanarak, V harfi yerine 5 rakamından bahsettiğiniz açıkça anlaşılır hale gelir. Bu, "XX versiyon 5" i ararken arama motorunun "XX mark V" bulma şansının daha yüksek olacağı anlamına gelir.

Aslında bazı şeylerin kötü çalışmasının nedeni, anlamsal bilgiyi yerleştirmememizdir. İstersek dünya gerçekten daha iyi bir yer olurdu. Yani doğru anlamsal anlamın kullanılması, bir kelime işlemcideki stillerin manüel olarak stillendirmeye göre kullanılması ile aynıdır. İnsan tarafında çok az fark var, ancak otomasyonda büyük güç var.

Yazı tipleri farklı romen rakamları yapmalıdır

Yazı tipi üreticileri bunları pek kullanmazlar çünkü çok sık kullanılmazlar. Ancak bunları kullanarak, Roma rakamlı slabları, onları metinden ayıran harflerin üzerine alabilirsiniz. Bu yüzden bu özellik az kullanılıyor çünkü bu nadir bir kullanım. Yazı tipleri gerçekte her şeyi uygulamaz, ya da yapmazlar. Bunları kullanarak, mevcutsa fayda sağlarsınız.

Sonuç

Bunların hepsi kesinlikle bir tavuk ve yumurta tipi sorunudur. Eğer insanlar özel karakter aralıklarını kullanmazlarsa o zaman bu aralıklar için özel bir tahsisat yapılmayacaktır. Bu yüzden font, özel olarak yazılmış Roma harflerini desteklemeyecektir, çünkü bunu yapmak hiç kimsenin kullanmadığı özellikler için çaba harcıyor olabilir. Aynı şey arama için de geçerlidir: hiç kimse roma harfleri kullanmazsa, o zaman hiçbir arama motoru roma harfleri bulamaz ve anlam kaybedilir. Anlambilim, doğru anlamsal anlam benimsemekten muzdariptir. Bu aynı şey kesinlikle daha geniş Unicode karakterleri için de geçerlidir.

Girdi karmaşıklığına gelince, evet çoğu kullanıcı genişletilmiş karakterler yazamaz, ancak bilgili bir insanın bunu yapmayı atlaması mantıklı değilse, bunun için bir bahane değildir. Eğer kimse işleri daha iyi hale getirmezse, hiçbir zaman ilerleme kaydedilmeyecektir. Cehennem kelimesi bile yazarak / alfa yazarak alfa yazabilir. Bu nedenle, sayıları etiketlemenin kolay bir yolunun olmasının ve hatta bunları otomatik olarak önermenin bir nedeni yoktur. Yine, eğer kimse bunu yapmazsa, o zaman asla daha yaygın bir şekilde benimsenmeyecek.


Aslında, bir arama motoru "Louis Ⅶ" yerine "Louis VII" yi aramaya başladığında çok daha iyi sonuçlar veriyor, çünkü içeriğin çoğu, bu tür anlamsal ayrımlara izin vermeyen araçlarla üretiliyor.
xpereta,

1
@xpereta evet çünkü insanlar anlambilimi önemsemiyor. Ancak, eğer öyle olsaydı, kolaylıkla rakamlar için 7 ile eşleşirdiniz. Dünyadaki eksikliklerin çoğu, insanların kolaylıkla yapabilecekleri şeylerin anlamsal olarak farkına dikkat çekmek için önemli olmadığını düşünmeleridir. Bilgisayar bir insanın bile yapacağı farkı bile bilmiyor
Joojaa

1
@joojaa Bu durumda, büyük olasılıkla VII'nin Ⅶ'den daha kolay yazılması büyüklükte olduğu gerçeğiyle ilgisi var. Bunun değişip değişmeyeceğinden emin değilim.
Ixrec

Son paragrafta, bunun gibi özel karakterlerin daha geniş kullanımının daha geniş font uygulamasını destekleyeceği sonucuna varmak için biraz daha genişlerdim.
Nathan Tuggy

2
Bu cevabı anlambilim açısından şiddetle sorgularım. Unicode Romen rakamı karakterleri, <compat>Latin harflerinin karşılık gelen dizilerine eşdeğerdir; bu, Unicode'da olmalarının tek sebebinin, kendilerine sahip olan bazı eski (muhtemelen CJK) karakter setleriyle gidiş dönüş uyumluluğudur. Bu tür karakterler genellikle eski kodlamalarda oluşturulan sadık bir şekilde toplanan belgeler dışında kullanılmamalıdır.
R. ..
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.