OpenType Yazı Tipi Özellikleri
Bu konu başlığında, Windows Presentation Foundation (WPF) içinde OpenType yazı tipi teknolojisinin bazı önemli özelliklerine genel bir bakış vemektedir.
OpenType Yazı Tipi Biçimi
OpenType yazı tipi biçimi, TrueType yazı tipi ® uzantısıdır ve yazı tipi verilerini PostScript destek sağlar. OpenType yazı tipi biçimi Microsoft ve Adobe Corporation tarafından birlikte geliştirilmiştir. OpenType yazı tipleri ve OpenType yazı tiplerini destekleyen işletim sistemi hizmetleri, kullanıcılara yazı tiplerini yüklemek ve kullanmak için basit bir yol sağlar. Yazı tipleri TrueType ana hatlarını veya CFF (PostScript) ana hatlarını içerir.
OpenType yazı tipi biçimi aşağıdaki geliştirici zorluklarını karşılar:
Daha geniş çok platformlu destek.
Uluslararası karakter kümeleri için daha iyi destek.
Yazı tipi verileri için daha iyi koruma.
Yazı tipi dağıtımını daha verimli hale getirirken daha küçük dosya boyutları.
Gelişmiş yazım denetimi için daha geniş destek.
Not
Windows SDK'sı, Windows Presentation Foundation (WPF) uygulamalarıyla kullanabileceğiniz örnek OpenType yazı tipleri kümesi içerir. Bu yazı tipleri, bu konunun geri kalanında gösterilen özelliklerin çoğunu sağlar. Daha fazla bilgi için bkz. Örnek OpenType Yazı Tipi Paketi.
OpenType yazı tipi biçiminin ayrıntıları için bkz. OpenType belirtimi.
Gelişmiş Tipografik Uzantılar
Gelişmiş Tipografik tablolar (OpenType Düzeni tabloları), yazı tiplerinin işlevselliğini TrueType veya CFF ana hatlarıyla genişlettir. OpenType Düzeni yazı tipleri, yüksek kaliteli uluslararası tipografiyi desteklemek için yazı tiplerinin özelliklerini genişleten ek bilgiler içerir. Çoğu OpenType yazı tipi, kullanılabilir toplam OpenType özelliklerinin yalnızca bir alt kümesini gösterir. OpenType yazı tipleri aşağıdaki özellikleri sağlar.
Karakter ve karakter karakterlerini destekleyen karakterler, konumsal formlar, alternatifler ve diğer yazı tipi değişimleri arasında zengin eşleme.
İki boyutlu konumlandırma ve glyph eki desteği.
Yazı tipinde yer alan açık betik ve dil bilgileri, bu nedenle metin işleme uygulaması davranışını uygun şekilde ayarlayabilir.
OpenType Düzeni tabloları, OpenType belirtimlerinin "Yazı Tipi Dosya Tabloları" bölümünde daha ayrıntılı olarak açıklanmıştır.
Bu genel bakışın geri kalanında, nesnenin özellikleri tarafından ortaya konu olan görsel olarak ilgi çekici OpenType özelliklerinden bazılarının geniş ve esnek bir şekilde Typography tanıtılası. Bu nesne hakkında daha fazla bilgi için bkz. Tipografi Sınıfı.
Değişkenler
Çeşitlemeler, üst ve alt simge gibi farklı tipografi stillerini işlemek için kullanılır.
Üst ve Alt Simge
özelliği, Variants OpenType yazı tipi için üst simge ve alt simge değerleri ayarlamaya olanak sağlar.
Aşağıdaki metinDelatin Linotype yazı tipi için üst simge görüntüler.

Aşağıdaki işaretleme örneğinde, nesnesinin özellikleri kullanılarak, Süreyatin Linotype yazı tipi için üst simge tanımlama adımları Typography yer almaktadır.
<Paragraph FontFamily="Palatino Linotype">
2<Run Typography.Variants="Superscript">3</Run>
14<Run Typography.Variants="Superscript">th</Run>
</Paragraph>
Aşağıdaki metinDelatin Linotype yazı tipi için alt simge görüntüler.

Aşağıdaki işaretleme örneğinde, nesnesinin özellikleri kullanılarak, Süreyatin Linotype yazı tipi için alt simge tanımlama adımları Typography yer almaktadır.
<Paragraph FontFamily="Palatino Linotype">
H<Run Typography.Variants="Subscript">2</Run>O
Footnote<Run Typography.Variants="Subscript">4</Run>
</Paragraph>
Üst Ve Alt Simgelerin Dekoratif Kullanımları
Karışık büyük/küçük harf metninin dekoratif etkilerini oluşturmak için üst simge ve alt simge de kullanabilirsiniz. Aşağıdaki metinde, Palaino Linotype yazı tipi için üst simge ve alt simge metni görüntülenir. Büyük harflerden etkilenmez.

Aşağıdaki işaretleme örneği, nesnenin özelliklerini kullanarak bir yazı tipi için üst simge ve alt simge tanımlamayı Typography gösterir.
<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Superscript">
Chapter One
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Subscript">
Chapter One
</Paragraph>
Başkentler
Büyük/küçük harf, metni büyük harf stilinde işleyici bir yazım formu kümesidir. Genellikle, metin tüm büyük harfler olarak işlenecekse, harfler arasındaki boşluk çok dar görünebilir ve harflerin ağırlığı ve oranı çok ağır olabilir. OpenType, küçük büyük harfler, büyük harfler, yazı tipi oluşturma ve büyük harf aralığı dahil olmak üzere büyük harfler için bir dizi stil biçimi destekler. Bu stil biçimleri, büyük harf görünümünü denetlemenizi sağlar.
Aşağıdaki metinde, Pescadero yazı tipi için standart büyük harfler ve ardından "SmallCaps" ve "AllSmallCaps" stilinde harfler görüntülenir. Bu durumda, üç sözcük için de aynı yazı tipi boyutu kullanılır.

Aşağıdaki işaretleme örneği, nesnenin özelliklerini kullanarak Pescadero yazı tipi için büyük harf tanımlamayı Typography gösterir. "SmallCaps" biçimi kullanılırken, baştaki tüm büyük harf yoksayılır.
<Paragraph FontFamily="Pescadero" FontSize="48">
<Run>CAPITALS</Run>
<Run Typography.Capitals="SmallCaps">Capitals</Run>
<Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>
Ling Capitals
Küçük sermayeler ağırlık ve oran olarak daha hafiftir ve normal büyük harflerden daha zarif bir görünüm vermek için tasarlanmıştır. Genellikle büyük yazı tipi boyutlarında başlık olarak büyük büyük harf kullanılır. Aşağıdaki metin, Pescadero yazı tipi için normal ve büyük harflerini gösterir. İkinci satırda metnin daha dar kök genişlikleri olduğunu fark edilir.

Aşağıdaki işaretleme örneği, nesnenin özelliklerini kullanarak Pescadero yazı tipi için büyük harf tanımlamayı Typography gösterir.
<Paragraph FontFamily="Pescadero">
<Run Typography.Capitals="Titling">chapter one</Run>
</Paragraph>
Büyük Harf Aralığı
Büyük harf aralığı, metinde tüm büyük harfler kullanırken daha fazla boşluk sağlamayı sağlayan bir özelliktir. Büyük harfler genellikle küçük harflerle karıştırılmalıdır. ile büyük harf ve küçük harf arasında cazip görünen boşluklar, tüm büyük harfler kullanılırken çok dar görünür. Aşağıdaki metinde Pescadero yazı tipi için normal ve büyük harf aralığı görüntülenir.

Aşağıdaki işaretleme örneğinde, nesnenin özellikleri kullanılarak Pescadero yazı tipi için büyük harf aralığının nasıl tanımladığınız Typography gösterir.
<Paragraph FontFamily="Pescadero">
<Run Typography.CapitalSpacing="True">CHAPTER ONE</Run>
</Paragraph>
Türtürler
Daha okunabilir veya çekici bir metin oluşturmak için tek bir glyph'de oluşturulan iki veya daha fazla glyph vardır. OpenType yazı tipleri dört tür özelliği destekler:
Standart son derece önemli. Okunabilirliği geliştirmek için tasarlanmıştır. Standart özellikler arasında "fi", "fl" ve "ff" yer alır.
Bağlamsal olgunlaşma. Daha iyi birleştirme davranışı sağlayarak okunabilirliği geliştirmek için tasarlanmıştır.
İsteğe bağlı sonar. Özel olarak okunabilirlik için tasarlanmamaktadır.
Geçmiş önem dereceleri. Geçmiş olarak tasarlanmıştır ve özellikle okunabilirlik için tasarlanmamaktadır.
Aşağıdaki metinde Pericles yazı tipi için standart karakter karakterlerini görüntüler.

Aşağıdaki işaretleme örneği, nesnesinin özelliklerini kullanarak Pericles yazı tipi için standart özellik karakterlerini tanımlamayı Typography gösterir.
<Paragraph FontFamily="Pericles" Typography.StandardLigatures="True">
<Run Typography.StylisticAlternates="1">FI</Run>
<Run Typography.StylisticAlternates="1">FL</Run>
<Run Typography.StylisticAlternates="1">TH</Run>
<Run Typography.StylisticAlternates="1">TT</Run>
<Run Typography.StylisticAlternates="1">TV</Run>
<Run Typography.StylisticAlternates="1">TW</Run>
<Run Typography.StylisticAlternates="1">TY</Run>
<Run Typography.StylisticAlternates="1">VT</Run>
<Run Typography.StylisticAlternates="1">WT</Run>
<Run Typography.StylisticAlternates="1">YT</Run>
</Paragraph>
Aşağıdaki metinde Pericles yazı tipi için iktiyazlı karakter karakterlerini görüntüler.

Aşağıdaki işaretleme örneği, nesnesinin özelliklerini kullanarak Pericles yazı tipi için irdelemeli özellik karakterlerini tanımlamayı Typography gösterir.
<Paragraph FontFamily="Pericles" Typography.DiscretionaryLigatures="True">
<Run Typography.StylisticAlternates="1">CO</Run>
<Run Typography.StylisticAlternates="1">LA</Run>
<Run Typography.StylisticAlternates="1">LE</Run>
<Run Typography.StylisticAlternates="1">LI</Run>
<Run Typography.StylisticAlternates="1">LL</Run>
<Run Typography.StylisticAlternates="1">LO</Run>
<Run Typography.StylisticAlternates="1">LU</Run>
</Paragraph>
Varsayılan olarak, Windows Presentation Foundation (WPF) içinde OpenType yazı tipleri standart özellikleri etkinleştirir. Örneğin, Palaino Linotype yazı tipini kullanırsanız standart "fi", "ff" ve "fl" standart ifadeleri birleştirilmiş karakter karakteri olarak görünür. Her standart özelin karakter çiftinin birbirine dokunduğuna dikkat edin.

Ancak standart özellik özelliklerini devre dışı bırakarak "ff" gibi standart bir özelliğin birleştirilmiş karakter karakteri karakteri yerine iki ayrı karakter olarak görüntülemesini s sağlar.

Aşağıdaki işaretleme örneğinde, nesnesinin özellikleri kullanılarak, Süretin Linotype yazı tipi için standart özellik karakterlerini devre dışı bırakma adımları Typography gösterildi.
<!-- Set standard ligatures to false in order to disable feature. -->
<Paragraph Typography.StandardLigatures="False" FontFamily="Palatino Linotype" FontSize="72">
fi ff fl
</Paragraph>
Süsler
Swashes genellikle calligraphy ile ilişkili ayrıntılı açıklama kullanan dekoratif yazılardır. Aşağıdaki metin, Pescadero yazı tipi için standart ve swash karakterlerini görüntüler.

Swashes genellikle olay duyuruları gibi kısa ifadelerde dekoratif öğeler olarak kullanılır. Aşağıdaki metin, olay adının büyük harflerini vurgulamak için swashes kullanır.

Aşağıdaki işaretleme örneğinde, nesnesinin özellikleri kullanılarak yazı tipi için nasıl swashes tanımladığınız Typography gösterir.
<Paragraph FontFamily="Pescadero" TextBlock.TextAlignment="Center">
Wishing you a<LineBreak/>
<Run Typography.StandardSwashes="1" FontSize="36">Happy New Year!</Run>
</Paragraph>
Bağlamsal Swashes
Swash glyph'ların belirli birleşimleri, bitişik harflerde çakışan altlıklar gibi, itici olmayan bir görünüme neden olabilir. Bağlamsal bir swash kullanmak, daha iyi bir görünüm sağlayan bir yedek swash glyph kullanmana olanak sağlar. Aşağıdaki metin, bağlamsal bir swash uygulanmadan önce ve sonra aynı sözcüğü gösterir.

Aşağıdaki işaretleme örneği, nesnenin özelliklerini kullanarak Pescadero yazı tipi için bağlamsal bir swash tanımlamayı Typography gösterir.
<Paragraph FontFamily="Pescadero" Typography.StandardSwashes="1">
Lyon <Run Typography.ContextualSwashes="1">L</Run>yon
</Paragraph>
Diğerleri
Alternatifler, standart bir glyph yerine değiştirilene glyph'lerdir. Aşağıdaki örneklerde kullanılan Pericles yazı tipi gibi OpenType yazı tipleri, metin için farklı görünümler oluşturmak üzere kullanabileceğiniz alternatif karakter içerebilir. Aşağıdaki metinde Pericles yazı tipi için standart karakter görüntülenir.

Pericles OpenType yazı tipi, standart karakter kümesine stilsel alternatifler sağlayan ek karakter karakterlerini içerir. Aşağıdaki metin, biçimsel alternatif glifleri görüntüler.

Aşağıdaki biçimlendirme örneği, nesnenin özelliklerini kullanarak Pericles yazı tipi için biçimsel alternatif karakterlerin nasıl tanımlanacağını gösterir Typography .
<Paragraph FontFamily="Pericles">
<Run Typography.StylisticAlternates="1">A</Run>NCIENT
GR<Run Typography.StylisticAlternates="1">EE</Run>K
MYTH<Run Typography.StylisticAlternates="1">O</Run>LOGY
</Paragraph>
Aşağıdaki metin Pericles yazı tipi için diğer biçimsel diğer glifleri görüntüler.

Aşağıdaki biçimlendirme örneği, bu diğer biçimsel diğer karakterlerin nasıl tanımlanacağını göstermektedir.
<Paragraph FontFamily="Pericles">
<Run Typography.StylisticAlternates="1">A</Run>
<Run Typography.StylisticAlternates="2">A</Run>
<Run Typography.StylisticAlternates="3">A</Run>
<Run Typography.StylisticAlternates="1">C</Run>
<Run Typography.StylisticAlternates="1">E</Run>
<Run Typography.StylisticAlternates="1">G</Run>
<Run Typography.StylisticAlternates="1">O</Run>
<Run Typography.StylisticAlternates="1">Q</Run>
<Run Typography.StylisticAlternates="1">R</Run>
<Run Typography.StylisticAlternates="2">R</Run>
<Run Typography.StylisticAlternates="1">S</Run>
<Run Typography.StylisticAlternates="1">Y</Run>
</Paragraph>
Rastgele bağlamsal alternatifler
Rastgele bağlamsal alternatifler, tek bir karakter için birden çok yedek karakter sağlar. Betik türü yazı tipleriyle uygulandığında, bu özellik, görünümde hafif farklılıklar bulunan rastgele seçilmiş karakterlerin bir kümesini kullanarak el yazısını taklit edebilir. Aşağıdaki metin Lindsey yazı tipi için rastgele bağlamsal alternatifleri kullanır. "A" harfinin görünümde biraz farklılık gösterdiğinden emin olun

Aşağıdaki biçimlendirme örneği, nesnenin özelliklerini kullanarak Lindsey yazı tipi için rastgele bağlamsal alternatiflerini nasıl tanımlayacağınızı gösterir Typography .
<TextBlock FontFamily="Lindsey">
<Run Typography.ContextualAlternates="True">
a banana in a cabana
</Run>
</TextBlock>
Geçmiş formları
Geçmiş formları geçmişte ortak olan tipografik kurallardır. Aşağıdaki metin Palatino Linotype yazı tipi için bir karakter geçmiş biçimi kullanarak "Boston, Massachusetts" ifadesini görüntüler.

Aşağıdaki biçimlendirme örneği, nesnesinin özellikleri kullanılarak Palatino Linotype yazı tipi için geçmiş formlarının nasıl tanımlanacağını gösterir Typography .
<Paragraph FontFamily="Palatino Linotype">
<Run Typography.HistoricalForms="True">Boston, Massachusetts</Run>
</Paragraph>
Sayısal stiller
OpenType yazı tipleri, metindeki sayısal değerlerle kullanılabilecek çok sayıda özelliği destekler.
Kesirli
OpenType yazı tipleri, eğik çizgili ve yığılmış dahil olmak üzere kesirler için stilleri destekler.
Aşağıdaki metin Palatino Linotype yazı tipi için kesir stillerini görüntüler.

Aşağıdaki biçimlendirme örneğinde, nesnesinin özellikleri kullanılarak Palatino Linotype yazı tipi için kesir stillerinin nasıl tanımlanacağı gösterilmektedir Typography .
<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Slashed">
1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Stacked">
1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>
Eski stil rakamları
OpenType yazı tipleri eski bir stil rakamı biçimini destekler. Bu biçim, artık standart olmayan stillerdeki rakamları görüntülemek için yararlıdır. Aşağıdaki metin Palatino Linotype yazı tipi için standart ve eski stil sayısal biçimlerinde bir 18 yüzyıl tarihi görüntüler.

Aşağıdaki metin Palatino Linotype yazı tipi için standart rakamları ve ardından eski stil rakamlarını görüntüler.

Aşağıdaki biçimlendirme örneği, nesnesinin özellikleri kullanılarak Palatino Linotype yazı tipi için eski stil rakamlarını nasıl tanımlayacağınızı gösterir Typography .
<Paragraph FontFamily="Palatino Linotype">
<Run Typography.NumeralStyle="Normal">1234567890</Run>
<Run Typography.NumeralStyle="OldStyle">1234567890</Run>
</Paragraph>
Orantılı ve tablo rakamları
OpenType yazı tipleri, rakamlar kullanılırken genişlerinin hizalamasını denetlemek için orantılı ve tablolu şekil özelliğini destekler. Orantılı rakamlar her rakamı farklı genişliğe sahip olacak şekilde değerlendirir — "1", "5" değerinden daha dar. Tablo rakamları, finansal tür bilgilerinin okunabilirliğini artıran, dikey olarak hizalanabilmesi için eşit genişlik rakamları olarak değerlendirilir.
Aşağıdaki metin, Miramonte yazı tipini kullanarak ilk sütunda iki orantılı rakamları görüntüler. "5" ve "1" rakamları arasındaki genişlik farkını dikkate alın. İkinci sütunda, tablolu şekil özelliği kullanılarak ayarlanan genişlikler ile aynı iki sayısal değer gösterilir.

Aşağıdaki biçimlendirme örneği, nesnesinin özelliklerini kullanarak Miramonte yazı tipi için orantılı ve tablo rakamlarını nasıl tanımlayacağınızı gösterir Typography .
<TextBlock FontFamily="Miramonte">
<Run Typography.NumeralAlignment="Proportional">114,131</Run>
</TextBlock>
<TextBlock FontFamily="Miramonte">
<Run Typography.NumeralAlignment="Tabular">114,131</Run>
</TextBlock>
Eğik çizgili sıfır
OpenType yazı tipleri, "O" harfi ve "0" rakamı arasındaki farkı vurgulamak için eğik çizgili sıfır rakamı biçimini destekler. Eğik çizgili sıfır rakamı genellikle finansal ve iş bilgileri tanımlayıcıları için kullanılır.
Aşağıdaki metin, Miramonte yazı tipini kullanarak örnek bir sıra tanımlayıcısı görüntüler. İlk satır standart rakamları kullanır. İkinci satır, büyük harfli "O" harfle daha iyi bir kontrast sağlamak için eğik çizgili sıfır rakamları kullandı.

Aşağıdaki biçimlendirme örneği, nesnesinin özelliklerini kullanarak Miramonte yazı tipi için eğik çizgili sıfır sayıların nasıl tanımlanacağını gösterir Typography .
<Paragraph FontFamily="Miramonte">
<Run>Order #0048-OTC-390</Run>
<LineBreak/>
<Run Typography.SlashedZero="True">Order #0048-OTC-390</Run>
</Paragraph>
Tipografi sınıfı
TypographyNesnesi, OpenType yazı tipinin desteklediği özellik kümesini gösterir. TypographyBiçimlendirme içindeki özelliklerini ayarlayarak OpenType özelliklerinden faydalanan belgeleri kolayca yazabilirsiniz.
Aşağıdaki metin Pescadero yazı tipi için standart büyük harfleri, ardından "SmallCaps" ve "AllSmallCaps" olarak stillendirilmiş harfleri görüntüler. Bu durumda, üç sözcük için de aynı yazı tipi boyutu kullanılır.

Aşağıdaki biçimlendirme örneğinde, nesnesinin özellikleri kullanılarak Pescadero yazı tipi için büyük harflerin nasıl tanımlanacağı gösterilmektedir Typography . "SmallCaps" biçimi kullanıldığında, önde gelen büyük harf yok sayılır.
<Paragraph FontFamily="Pescadero" FontSize="48">
<Run>CAPITALS</Run>
<Run Typography.Capitals="SmallCaps">Capitals</Run>
<Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>
Aşağıdaki kod örneği, önceki biçimlendirme örneği ile aynı görevi gerçekleştirir.
MyParagraph.FontFamily = new FontFamily("Pescadero");
MyParagraph.FontSize = 48;
Run run_1 = new Run("CAPITALS ");
MyParagraph.Inlines.Add(run_1);
Run run_2 = new Run("Capitals ");
run_2.Typography.Capitals = FontCapitals.SmallCaps;
MyParagraph.Inlines.Add(run_2);
Run run_3 = new Run("Capitals");
run_3.Typography.Capitals = FontCapitals.AllSmallCaps;
MyParagraph.Inlines.Add(run_3);
MyParagraph.Inlines.Add(new LineBreak());
MyParagraph.FontFamily = New FontFamily("Pescadero")
MyParagraph.FontSize = 48
Dim run_1 As New Run("CAPITALS ")
MyParagraph.Inlines.Add(run_1)
Dim run_2 As New Run("Capitals ")
run_2.Typography.Capitals = FontCapitals.SmallCaps
MyParagraph.Inlines.Add(run_2)
Dim run_3 As New Run("Capitals")
run_3.Typography.Capitals = FontCapitals.AllSmallCaps
MyParagraph.Inlines.Add(run_3)
MyParagraph.Inlines.Add(New LineBreak())
Tipografi sınıfı özellikleri
Aşağıdaki tablo nesnenin özelliklerini, değerlerini ve varsayılan ayarlarını listeler Typography .