Yerelleştirme Öznitelikleri ve Yorumlar
Windows Presentation Foundation (WPF) yerelleştirme yorumları, geliştiriciler tarafından yerelleştirmeye yönelik kurallar ve ipuçları sağlamak için sağlanan XAML kaynak kodu içinde yer alan özelliklerdir. Windows Presentation Foundation (WPF) yerelleştirme açıklamalarının iki bilgi kümesi vardır: yerelleştirme öznitelikleri ve serbest biçimli yerelleştirme yorumları. Yerelleştirme öznitelikleri, HANGI kaynakların yerelleştirilmesini belirtmek için WPF Yerelleştirme API'si tarafından kullanılır. Serbest biçimli açıklamalar, uygulama yazarının eklemek istediği tüm bilgilerdir.
Yerelleştirme Yorumları
Biçimlendirme uygulaması yazarlarının XAML'de metin uzunluğu, yazı tipi ailesi veya yazı tipi boyutu kısıtlamaları gibi belirli öğeler için gereksinimleri varsa, bu bilgileri XAML kodundaki açıklamalarla yerelleştiricilere iletebilirler. Kaynak koduna açıklama ekleme işlemi aşağıdaki gibidir:
Uygulama geliştiricisi XAML kaynak koduna yerelleştirme yorumları ekler.
Derleme işlemi sırasında,.proj dosyasında derlemede serbest biçimli yerelleştirme açıklamalarını bırakma, yorumların bir kısmını çıkararak veya tüm yorumların çıkararak ayrılmayı belirtebilirsiniz. Çıkarılmış açıklamalar ayrı bir dosyaya yerleştirilir. Seçeneğinizi bir etiket kullanarak
LocalizationDirectivesToLocFilebelirtirsiniz, örneğin:<LocalizationDirectivesToLocFile><LocalizationDirectivesToLocFile></LocalizationDirectivesToLocFile>Atanabilir değerler:
Hiçbiri - Hem açıklamalar hem de öznitelikler derlemenin içinde kalır ve ayrı bir dosya oluşturulmaz.
CommentsOnly - Derlemeden yalnızca yorumları şeritler ve bunları ayrı LocFile'a yer.
All - Derlemeden hem yorumları hem de öznitelikleri şeritler ve her ikisini de ayrı bir LocFile'a yer.
Yerelleştirilebilir kaynaklar BAML'den ayıklanırsa, yerelleştirilebilirlik öznitelikleri BAML Yerelleştirme API'si tarafından kabul edilebilir.
Yalnızca serbest biçimli açıklamalar içeren yerelleştirme açıklaması dosyaları, daha sonra yerelleştirme sürecine dahil olur.
Aşağıdaki örnekte, bir XAML dosyasına yerelleştirme açıklamalarını ekleme adımları yer almaktadır.
<TextBlock x:Id = "text01"
FontFamily = "Microsoft Sans Serif"
FontSize = "12"
Localization.Attributes = "$Content (Unmodifiable Readable Text)
FontFamily (Unmodifiable Readable)"
Localization.Comments = "$Content (Trademark)
FontSize (Trademark font size)" >
Microsoft
</TextBlock>
Önceki örnekte Localization.Attributes bölümü, yerelleştirme özniteliklerini ve Localization.Comments bölümünü serbest biçimli yorumları içerir. Aşağıdaki tablolarda öznitelikleri, yorumları ve bunların yerelleştiriciye olan anlamı yer almaktadır.
| Yerelleştirme öznitelikleri | Anlamı |
|---|---|
| $Content (Değiştirilmez Okunabilir Metin) | TextBlock öğesinin içeriği değiştirilemez. Yerelleştiriciler "Microsoft" sözcüğüni değiştiremez. İçerik, yerelleştiricide görünür (Okunabilir). İçeriğin kategorisi metindir. |
| FontFamily (Değiştirilemez Okunabilir) | TextBlock öğesinin yazı tipi ailesi özelliği değiştirilemez, ancak yerelleştirici tarafından görülebilir. |
| Yerelleştirme serbest biçimli açıklamalar | Anlamı |
|---|---|
| $Content (Ticari Marka) | Uygulama yazarı, yerelleştiriciye TextBlock öğesinde bulunan içeriğin bir ticari marka olduğunu söyler. |
| FontSize (Ticari marka yazı tipi boyutu) | Uygulama yazarı, yazı tipi boyutu özelliğinin standart ticari marka boyutuna uyması gerektiğini gösterir. |
Yerellik Öznitelikleri
Localization.Attributes'daki bilgiler çiftlerin listesini içerir: hedeflenen değer adı ve ilişkili yerelleştirme değerleri. Hedef ad bir özellik adı veya özel ad $Content olabilir. Bir özellik adı ise hedeflenen değer özelliğin değeridir. Bu değer $Content, hedef değer öğenin içeriğidir.
Üç tür öznitelik vardır:
Kategori. Bu, bir değerin yerelleştirici aracından değiştirilebilir olup olmadığını belirtir. Bkz. Category.
Okunabilirlik. Bu, bir yerelleştirici aracının bir değeri okuması (ve görüntülemesi) gerekip gerek olmadığını belirtir. Bkz. Readability.
Değiştirilebilirlik. Bu, bir yerelleştirici aracının bir değerin değiştirilmeye izin verip kat olmadığını belirtir. Bkz. Modifiability.
Bu öznitelikler bir boşlukla ayrılmış herhangi bir sırayla belirtilebilir. Yinelenen öznitelikler belirtilirse, son öznitelik eskileri geçersiz kılar. Örneğin, Localization.Attributes = "Unmodifiable" son değer olduğundan Değiştirilebilir olarak ayarlar.
Değiştirilebilirlik ve Okunabilirlik kendi kendine açıklayıcıdır. Category özniteliği, metin çevirileri için yerelleştiriciye yardımcı olan önceden tanımlanmış kategoriler sağlar. Metin, Etiket ve Başlık gibi kategoriler, yerelleştiriciye metnin nasıl çevrilecekleri hakkında bilgi verir. Ayrıca özel kategoriler de vardır: Yok, Devral, Yoksay ve NeverLocalize.
Aşağıdaki tabloda özel kategorilerin anlamı yer almaktadır.
| Kategori | Anlamı |
|---|---|
| Hiçbiri | Hedeflenen değerin tanımlı bir kategorisi yoktur. |
| Devralır | Hedeflenen değer, kategorisini üst öğesinden devralır. |
| Yoksayma | Yerelleştirme sürecinde hedeflenen değer yoksayılır. Yoksay yalnızca geçerli değeri etkiler. Alt düğümleri etkilemez. |
| NeverLocalize | Geçerli değer yerelleştirilmiş olamaz. Bu kategori bir öğenin üst öğesi tarafından devralınmıştır. |
Yerelleştirme Yorumları
Localization.Comments, hedeflenen değerle ilgili serbest biçimli dizeler içerir. Uygulama geliştiricileri, uygulama metninin nasıl çevril gerektiği hakkında yerelleştirici ipuçları vermek için bilgi ekleyebilir. Yorumların biçimi "()" ile çevreli herhangi bir dize olabilir. Karakterleri kaçış karakteri olarak kullanmak için '\' kullanın.