CFont::CreateFont

bool CreateFont ( int nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, byte bItalic, byte bUnderline, byte cStrikeOut, byte nCharSet, byte nOutPrecision, byte nClipPrecision, byte nQuality, byte nPitchAndFamily, lpctstr lpszFacename );

Dönüş değeri

Sıfır başarılı olursa; Aksi halde 0.

Parametreleri

nHeight

İstenilen Yükseklik (mantıksal birimler) yazı tipi belirler. Yazı tipi yüksekliği aşağıdaki şekillerde belirtilebilir:

nWidth

Ortalama genişliği (mantıksal birimler) karakter yazı tipini belirtir. NWidth 0 ise, aygıt boyut oranını dijitalleştirme en boy oranı farkı mutlak değeriyle belirlenir en yakın eşleşmeyi bulmak için kullanılabilir yazı tiplerine karşı eşlenmesi.

nEscapement

(0,1 Derece biriminde) maşası vektör ve x ekseni ekran yüzeyi arasındaki açıyı belirtir. Maşası vektör üzerinden bir satırdaki ilk ve son karakterler kökeni çizgidir. Açı Saat yönünün tersine x ekseni ölçülür.

nOrientation

Temel karakter ve x ekseni arasındaki açı (0,1 derece biriminde) belirtir. Açı Saat yönünün tersine dan koordinat sistemleri y-yönü aşağı ve koordinat y-yönü kadar olan sistemler için x ekseni Saat yönünde olduğu için x ekseni ölçülür.

nWeight

(Mürekkeplenmiş piksel cinsinden başına 1000) yazı tipi kalınlığını belirler. Herhangi bir tamsayı değeri 0-1000 nWeight karşın yaygın sabitleri ve değerleri gibidir.:

Sürekli Değer
FW_DONTCARE 0
FW_THIN 100
FW_EXTRALIGHT 200
FW_ULTRALIGHT 200
FW_LIGHT 300
FW_NORMAL 400
FW_REGULAR 400
FW_MEDIUM 500
FW_SEMIBOLD 600
FW_DEMIBOLD 600
FW_BOLD 700
FW_EXTRABOLD 800
FW_ULTRABOLD 800
FW_BLACK 900
FW_HEAVY 900

Bu değerler yaklaşık değerlerdir; gerçek görünümü üzerinde yazı bağlıdır. Bazı yazı tipleri yalnızca fw_normal, fw_regularve fw_bold ağırlıkları var. fw_dontcare belirtilirse, varsayılan ağırlık kullanılır.

bItalic

Yazı tipini italik olup olmadığını belirtir.

bUnderline

Yazı tipi altı çizili olup olmadığını belirtir.

cStrikeOut

Yazı karakterleri vurdu olup olmadığını belirtir. Üstü çizili yazı tipi belirler sıfır olmayan bir değere ayarlayın.

nCharSet

Yazı tipinin karakter kümesini belirtir. Aşağıdaki sabitler ve değerleri önceden:

Sürekli Değer
ANSI_CHARSET 0
DEFAULT_CHARSET 1
SYMBOL_CHARSET 2
SHIFTJIS_CHARSET 128
OEM_CHARSET 255

Oem karakter kümesi sistem bağlıdır.

Diğer karakter kümeleriyle fontlar sistemde bulunabilir. Bir bilinmeyen karakter kümesiyle bir yazı tipini kullanan bir uygulama çevirmek ya da bu yazı tipiyle işlenecek olan dizeleri yorumlamak girişiminde gerekir. Bunun yerine, dizeleri doğrudan çıkış aygıtı sürücüsü aktarılmalıdır.

Yazı tipi Eşleştiricisi default_charset değerini kullanın. Bir uygulama bu değeri tamamen mantıklı yazı tipini tanımlamak için bir yazı tipi boyutunu ve adı sağlamak için kullanabilirsiniz. Belirtilen ada sahip bir yazı tipi yoksa, herhangi bir karakter kümesinden bir yazı belirtilen yazı tipi için yedek olabilir. Beklenmedik sonuçları önlemek için uygulamalar default_charset değeri idareli kullanmalıdır.

nOutPrecision

İstenen çıkış duyarlılığı belirtir. Çıkış duyarlık çıktı istenen yazı tipinin yükseklik, genişlik, karakter yönlendirmesini, maşası ve sahada ne kadar yakından eşleşmelidir tanımlar. Aşağıdaki değerlerden biri olabilir:

OUT_CHARACTER_PRECIS OUT_STRING_PRECIS
OUT_DEFAULT_PRECIS OUT_STROKE_PRECIS
OUT_DEVICE_PRECIS OUT_TT_PRECIS
OUT_RASTER_PRECIS

Uygulamalar OUT_DEVICE_PRECIS, OUT_RASTER_PRECISve OUT_TT_PRECIS değerleri sisteme verilen adla birden fazla yazı tipi içeren bir yazı yazı Eşleştiricisi nasıl seçtiği denetlemek için kullanabilirsiniz. Örneğin, OUT_TT_PRECIS belirterek, bir sistemin sembol raster ve TrueType formunda adlı bir yazı tipi varsa, TrueType sürümü seçmek için yazı tipi Eşleştiricisi zorlar. ( OUT_TT_PRECIS belirterek, hatta hiç TrueType yazı tipi aynı adı ise her bir aygıtı belirtilen yazı tipi adıyla TrueType yazı tipi veya raster yazı, seçmek için yazı tipi Eşleştiricisi zorlar.)

nClipPrecision

İstenilen kırpma duyarlılığı belirtir. Kırpma hassas kısmen kırpma bölgesi karakterler küçük nasıl tanımlar. Aşağıdaki değerlerden biri olabilir:

CLIP_CHARACTER_PRECIS YALITIM_MASKESİ
CLIP_DEFAULT_PRECIS CLIP_STROKE_PRECIS
CLIP_ENCAPSULATE CLIP_TT_ALWAYS
CLIP_LH_ANGLES

Katıştırılmış bir salt yazı tipini kullanmak için bir uygulama CLIP_ENCAPSULATE belirtmelisiniz.

Aygıt, TrueType ve vektör yazı tipleri tutarlı dönüşünü sağlamak için uygulama CLIP_LH_ANGLES değeri diğer nClipPrecision değerler ile birleştirmeye veya işlecini kullanabilirsiniz. CLIP_LH_ANGLES biti ayarlanmışsa, tüm yazı tipleri için rotasyon koordinat sistemi yönünü solak olmasına bağlıdır ya da sağ elini kullanan. (Koordinat Sistemleri yönlendirmesi hakkında daha fazla bilgi için bkz: nOrientation parametre açıklaması.) CLIP_LH_ANGLES ayarlanmışsa, aygıt fontlarını her zaman Saat yönünün tersine döndür, ancak diğer yazı rotasyonu koordinat sistemi yönünü bağlıdır.

nQuality

O gerçek bir fiziksel yazı tipinin yazı tipi mantıksal öznitelikleriyle eşleşmesi GDI ne kadar dikkatle teşebbüs tanımlar fontun çıktı kalitesini belirler. Aşağıdaki değerlerden biri olabilir:

nPitchAndFamily

Yazı tipi ailesi ve aralığı belirtir. İki alt sıra biti yazı tipi aralığı belirtin ve aşağıdaki değerlerden herhangi biri olabilir:

DEFAULT_PITCH VARIABLE_PITCH FIXED_PITCH

Uygulamalar, bir TrueType yazı tipi seçmek için nPitchAndFamily parametresi tmpf_truetype ekleyebilirsiniz. Dört yüksek sıralı bit parametre yazy tipi grubu belirlemek ve aşağıdaki değerlerden herhangi biri olabilir:

lpszFacename

Bir CString veya biten yazı tipini yazı tipi adını belirten bir dize işaretçisi. Bu dize uzunluğu 30 karakteri aşmamalıdır. Windows EnumFontFamilies işlevi, şu anda kullanılabilir tüm yazı tipleri numaralandırmak için kullanılabilir. LpszFacename nullise, bir aygıttan bağımsız yazı GDI kullanır.

Açıklamalar

Belirtilen özelliklere sahip bir CFont nesnesi başlatır. Yazı daha sonra herhangi bir aygıt içeriğini yazı olarak seçilebilir.

CreateFont işlevi, yeni bir Windows GDI yazı tipi oluşturmaz. O sadece GDI'ın havuzunda fiziksel yazı fontları en yakın eşleşmeyi seçer.

Uygulamaları, mantıksal bir yazı oluştururken, bu parametrelerin çoğu için varsayılan ayarları kullanabilirsiniz. Her zaman belirli değerleri verilmelidir parametreleri nHeight ve lpszFacenamevardır. NHeight ve lpszFacename uygulama tarafından ayarlanmamışsa, aygıta bağımlı oluşturulan mantıksal yazı.

CreateFont işlevi tarafından oluşturulan CFont nesnesi ile bitirdikten sonra ilk aygıt içeriğini yazı tipini seçin, sonra CFont nesnesini silme.

CFont genel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi

Ayrıca bkz:nbsp;CFont::CreateFontIndirect, CFont::CreatePointFont, :: CreateFont, :: EnumFontFamilies, :: EnumFonts

Index