BILGI: Kalın ve italik metin, metin alanları hesaplama

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

74298
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Özet
GetTextExtent() dize miktarını hesaplamak için kullanılır. Değerin ayarlanması için <a0></a0>, yazı tipi stilini bağlı olarak döndürdü. Grafik aygıt arabirimi (GDI), italik veya kalın yazı tipi istenen ve hiçbiri kullanılabilir olduğunda, bir varolan ızgara veya vektör yazı tipini kullanarak bu stilleri benzetimini.
Daha fazla bilgi
GDI benzetimli kalın ve italik yazı tipleri hem overhangs içerir. Çıkıntısı GetTextMetrics işlevini çağırarak elde TEXTMETRIC yapısındaki belirtildi. Italik veya kalın metin satırının miktarını hesaplamak için uygun yöntemi aşağıda gösterilmiştir:
   dwExtent = GetTextExtent(hDC, lpString, nCount);   GetTextMetrics(hDC, &tm);   xExtent = LOWORD(dwExtent) - tm.tmOverhang;				
aşağıda listelenen italik metin hizalama örnektir. Bir sonraki karakteri zaten italik olarak belirlenmişse, çıkıntısı GetTextExtent işlevinden döndürülen öncelikli genişliği gelen düşülen değil. Çıkıntısı sonraki karaktere hizalama için aynı olduğunda çıkarılması gerekiyor.
                                        GetTextExtent yields                                        this as the extent:                                              ||       /   /                                  \/       /   /           /   / /   /         /   /|   |     /---/           /   / /   /         /   / |   |    /   /           /---/ /---/         /---/  |---|   /   /           /   / /   /         /   /   |   |       -----      /   / /   /         /   /    |   |         ^            /\                      /\       Overhang        ||                      ||               Because the next        Start the nonitalic H               character is italic,    here because it does not               start the next          slant and would partially               character within the    overwrite the previous               overhang of the         italic character.               current character				
GDI kalın yazı tipleri synthesizes çünkü metni iki kez çıktısı, bir piksel ikinci çıkış mahsup, etkin bir şekilde her karakterin genişliğini bir piksel artırma. GDI tarafından oluşturulan kalın karakterler için çıkıntısı genellikle 1'dir. Kalın metin öncelikli genişliğini hesaplama yöntemi italik metin için benzer. GetTextExtent işlevi her zaman metni artı 1 kalın metin miktarını döndürür. Bu nedenle tmOverhang(1) çıkararak, uygun öncelikli sağlanır.
        ||   ||        ||   ||        ||===||        ||   ||        ||   ||              ---<= This line represents the "extra" overhang of 1.                /\                 ||             GetTextExtent yields             this as the extent of the             bold H.				
Not: Bu makale yalnızca tarama ve Vectory yazı tipleri için geçerlidir. ABC genişlikleri yapı tarafından tanımlanan TrueType yazı tipleri dizelerinin işlevleri her zaman iade öncelikli genişliklerde GetTextExtent() ailesi. ABC öncelikli genişlikleri hakkında daha fazla bilgi için GetCharABCWidths() işlevi belgelerine bakın.
3 3.10 3.50 4.00 win16sdk sınama öncelikli genişliği

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 74298 - Son İnceleme: 02/26/2014 23:19:04 - Düzeltme: 3.2

  • Microsoft Windows Software Development Kit 3.1
  • Microsoft Win32 Uygulama Programlama Arabirimi
  • kbnosurvey kbarchive kbmt kbinfo KB74298 KbMttr
Geri bildirim