Skip to main content

Ad Code

OTF Dosyası Nasıl Açılır? - Dosya Uzantısı

OTF dosyası nedir?

.otf uzantılı bir dosya, OpenType yazı tipi biçimini ifade eder. OTF yazı tipi biçimi daha ölçeklenebilirdir ve dijital tipografi için TTF biçimlerinin mevcut özelliklerini genişletir. Microsoft ve Adobe tarafından geliştirilen OTF, PostScript ve TrueType yazı tipi biçimlerinin özelliklerini birleştirir. Bu, OTF biçimini çoğunluk yazma sistemlerini barındırmak için yapar ve bu nedenle büyük bilgisayar platformlarında tek tip olarak kullanılır. OpenType yazı tipi formatı, Mac OS X ve Windows 2000 ve sonrası tarafından desteklenir.

Kısa Tarihçe

OpenType yazı tiplerinin gerekliliği, ince tipografiyi işleyebilecek daha anlamlı bir yazı tipi formatı için bir gereklilik olarak ortaya çıktı. Ayrıca dünyadaki birçok yazı sisteminin karmaşık davranış gereksinimlerini karşılaması amaçlandı. Microsoft, 1990’ların başında Apple’ın GX Tipografi olarak bilinen gelişmiş tipografi teknolojisini lisanslamaya çalıştı. Bu pek iyi gitmedi ve sonuç olarak Microsoft, 1994 yılında kendi TrueType yazı tipi teknolojisini geliştirmeye başladı. Adobe’nin Tip 1 (PostScript) yazı tipi biçimlerinin özelliklerini de karşılayan daha uygun bir yazı tipi biçimini tanıtmak için değişiklikler de dahil edildi.

Adobe, 1996’da, hem Apple’ın TrueType hem de kendi Tip 1 yazı tipi biçimlerinin yerini alma çabalarında Microsoft’a katıldı. Bu, sınırlamaların üstesinden gelmek ve yeni uzantılar eklemek için her iki temel yazı tipi biçiminin birleşimiyle sonuçlandı. Bu yeni teknoloji aynı yıl OpenType adıyla tanıtıldı.

OTF Dosya Biçimi Özellikleri

OTF spesifikasyonları, Microsoft tarafından genel olarak mevcuttur ve geliştiricinin bakış açısından atıfta bulunulabilir. TTF gibi, aynı ‘sfnt’ kapsayıcı yapısını kullanır ve TrueType belirtimleriyle uyumludur. Bir OpenType yazı tipi dosyasının içindeki veriler, metin düzenini hesaplama, glifleri TrueType veya Kompakt Yazı Tipi Biçimi (CFF) ana hatları olarak tanımlama, alternatif glif açıklamaları olarak tek renkli veya renkli bit eşlemler veya SVG belgeleri sağlama ve meta veri bilgileri gibi farklı amaçlar için kullanılır.

OTF Veri Türleri

OTF dosyaları, tümü Big Endian’da bulunan aşağıdaki veri türlerini kullanır.

Veri TürüAçıklama
uint88-bit işaretsiz tamsayı.
int88-bit işaretli tamsayı.
uint1616-bit işaretsiz tamsayı.
int1616-bit işaretli tamsayı.
uint2424-bit işaretsiz tamsayı.
uint3232-bit işaretsiz tamsayı.
int3232-bit işaretli tamsayı.
Sabit32-bit imzalı sabit noktalı sayı (16.16)
ÖN SÖZCÜKyazı tipi tasarım birimlerinde bir miktarı açıklayan int16.
UFKELİMEyazı tipi tasarım birimlerinde bir miktarı açıklayan uint16.
F2DOT14Düşük 14 bitlik kesir (2.14) ile 16-bit işaretli sabit sayı.
UZUN TARİH SÜRESİTarih ve saat, 1 Ocak 1904, UTC, 12:00 gece yarısından bu yana saniye olarak gösterilir. Değer, işaretli 64 bitlik bir tamsayı olarak temsil edilir.
EtiketBir tabloyu, tasarım varyasyon eksenini, komut dosyasını, dil sistemini, özelliği veya temel çizgiyi tanımlamak için kullanılan dört uint8 dizisi (uzunluk = 32 bit)
Ofset16uint16 ile aynı, NULL ofset = 0x0000
Ofset32Bir tabloya uzun uzaklık, uint32 ile aynı, NULL uzaklık = 0x00000000
Sürüm16Nokta16Ana ve küçük sürüm numaralarıyla paketlenmiş 32 bitlik değer. (Bkz. Versiyon Numaraları Tablosu.)

OTF Tabloları Dizini

Bir OTF dosyası bir tablo dizini ile başlar. Bu dizin, yazı tipi dosyasındaki tabloların en üst düzey koleksiyonudur. Bir dosyadaki yazı tipi sayısına bağlı olarak, tablo dizini dosyanın farklı yerlerinde bulunabilir. Örneğin, yazı tipi dosyasının yalnızca bir yazı tipi olması durumunda, tablo dizini dosyanın bayt 0’ında başlar. Birden çok OpenType Yazı Tipi koleksiyonu olması durumunda, tablo dizini başlangıcı TTHeader’da belirtilir.

TürAdAçıklama
uint32sfntSürüm0x00010000 veya 0x4F54544F (‘OTTO’)
uint16numTablesTablo sayısı.
uint16searchRange2’nin maksimum kuvveti numTables’tan küçük veya eşittir, çarpı 16 ((2**floor(log2(numTables))) * 16, burada “**” bir üs operatörüdür).
uint16entrySelector Log2 maksimum gücü 2 olan numTables’den (log2(searchRange/16) eşit veya daha az, bu da floor(log2(numTables)))‘a eşittir.
uint16rangeShiftnumTables çarpı 16, eksi searchRange ((numTables * 16) – searchRange).
tablo KaydıtableRecords[numTables]Tablo kayıtları dizisi—yazı tipindeki her üst düzey tablo için bir tane

Tablo Kaydı

Fonttaki her üst düzey tablo için aşağıdaki alanlardan oluşan bir Tablo Kaydı vardır.

TürAdAçıklama
EtikettabloEtiketTablo tanımlayıcı.
uint32sağlama toplamıBu tablo için sağlama toplamı.
Ofset32ofsetYazı tipi dosyasının başından itibaren ofset.
uint32uzunluk Bu tablonun uzunluğu.

OpenType yazı tipi dosyasındaki her tablo, tablo etiketleri olarak bilinen adlarla temsil edilir. Dizideki tüm kayıtların etikete göre artan sırada sıralanması zorunludur.

Referanslar

Yorum Gönder

0 Yorumlar