CFont::CreateFont

BOOL CreateFont ( int nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, ไบต์ bItalic, ไบต์ bUnderline, ไบต์ cStrikeOut, ไบต์ nCharSet, ไบต์ nOutPrecision, ไบต์ nClipPrecision, ไบต์ nQuality, ไบต์ nPitchAndFamily, LPCTSTR lpszFacename );

ส่งกลับค่า

ไม่ใช่ศูนย์ถ้าสำเร็จ 0 อื่น?

พารามิเตอร์

nHeight

ระบุความสูงที่ต้องการ (ในหน่วยทางลอจิคัล) ของแบบอักษร สามารถระบุความสูงของแบบอักษรในวิธีการต่อไปนี้:

nWidth

ระบุความกว้างเฉลี่ย (ในหน่วยทางลอจิคัล) ของอักขระในแบบอักษร ถ้าnWidth 0 อัตราส่วนกว้างยาวของอุปกรณ์จะถูกเปรียบเทียบอัตราส่วนกว้างยาว digitization ของแบบอักษรพร้อมใช้งานเมื่อต้องการค้นหาใกล้เคียง ซึ่งถูกกำหนด โดยค่าสัมบูรณ์ของความแตกต่าง?

nEscapement

ระบุมุม (ในหน่วย 0.1 องศา) ระหว่างเวกเตอร์ escapement และแกน x ของพื้นผิวแสดงผล เวกเตอร์ escapement บรรทัดที่ผ่านการกำเนิดของอักขระตัวแรก และล่าสุดบนบรรทัดได้ วัดมุมทวนเข็มนาฬิกาจากแกน x?

nOrientation

ระบุมุม (ในหน่วย 0.1 องศา) ระหว่างปกติของอักขระและแกน x วัดมุมทวนเข็มนาฬิกาจากแกน x สำหรับระบบพิกัด y-ทิศทางถูกลง และหมุนตามเข็มนาฬิกาจากแกน x สำหรับระบบพิกัด y-ทิศทางจะขึ้น?

nWeight

ระบุน้ำหนักแบบอักษร (เป็นพิกเซลผ้าต่อ 1000) แม้ว่าnWeightจะเป็นค่าจำนวนเต็มใด ๆ ตั้งแต่ 0 ไป 1000 ค่าคงและค่าทั่วไปมีดังนี้:

คง ค่า
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

ค่าเหล่านี้เป็นค่าโดยประมาณ ลักษณะที่ปรากฏที่แท้จริงขึ้นอยู่กับแบบอักษร แบบอักษรบางแบบมีเพียงFW_NORMAL, FW_REGULARและFW_BOLDน้ำหนัก ถ้ามีระบุFW_DONTCAREน้ำหนักการเริ่มต้นใช้?

bItalic

ระบุว่า แบบอักษรตัวเอียง?

bUnderline

ระบุว่า แบบอักษรถูกขีดเส้นใต้?

cStrikeOut

ระบุว่า อักขระในแบบอักษรถูกขีดออก ระบุแบบอักษรขีดทับถ้าตั้งค่าเป็นไม่ใช่ศูนย์?

nCharSet

ระบุชุดอักขระแบบอักษร กำหนดค่าคงและค่าต่อไปนี้ไว้ล่วงหน้า:

คง ค่า
ANSI_CHARSET 0
DEFAULT_CHARSET 1
SYMBOL_CHARSET 2
SHIFTJIS_CHARSET 128
OEM_CHARSET 255

OEM ชุดอักขระจะขึ้นอยู่กับระบบ?

แบบอักษร ด้วยชุดอักขระอื่น ๆ อาจมีอยู่ในระบบ โปรแกรมประยุกต์ที่ใช้แบบอักษร ด้วยชุดอักขระที่ไม่รู้จักการต้องไม่พยายามแปล หรือตีความสายอักขระที่มีการแสดงผล ด้วยแบบอักษรที่ แทน สายอักขระควรถูกส่งผ่านไปยังโปรแกรมควบคุมอุปกรณ์แสดงผล?

Mapper แบบอักษรที่ไม่ได้ใช้ค่าDEFAULT_CHARSET แอปพลิเคชันสามารถใช้ค่านี้เพื่ออนุญาตให้ชื่อและขนาดของแบบอักษรเพื่ออธิบายอย่างเต็มรูปแบบแบบอักษรแบบลอจิคัล ถ้าไม่มีแบบอักษรที่ มีชื่อที่ระบุ แบบอักษรจากชุดอักขระใด ๆ สามารถนำมาใช้แทนแบบอักษรที่ระบุ เพื่อหลีกเลี่ยงผลลัพธ์ที่ไม่คาดคิด แอปพลิเคชันควรใช้ค่าDEFAULT_CHARSETอย่างจำกัด?

nOutPrecision

ระบุความแม่นยำของผลลัพธ์ที่ต้องการ ความแม่นยำของผลลัพธ์กำหนดว่าใกล้เคียงต้องกับผลลัพธ์ของแบบอักษรที่ร้องขอความสูง ความกว้าง วางอักขระ escapement และระยะห่าง สามารถเป็นหนึ่งในค่าต่อไปนี้:

OUT_CHARACTER_PRECIS OUT_STRING_PRECIS
OUT_DEFAULT_PRECIS OUT_STROKE_PRECIS
OUT_DEVICE_PRECIS OUT_TT_PRECIS
OUT_RASTER_PRECIS

โปรแกรมประยุกต์ที่สามารถใช้ค่าOUT_DEVICE_PRECIS, OUT_RASTER_PRECISและOUT_TT_PRECISเพื่อควบคุมวิธีการที่ mapper แบบอักษรที่เลือกแบบอักษรเมื่อระบบประกอบด้วยแบบอักษรมากกว่าหนึ่ง โดยใช้ชื่อจริง ตัวอย่างเช่น ถ้าในระบบประกอบด้วยแบบอักษรที่ชื่อสัญลักษณ์ในราสเตอร์และแบบฟอร์ม TrueType ระบุOUT_TT_PRECISบังคับ mapper แบบอักษรที่เลือกรุ่น TrueType (ระบุOUT_TT_PRECISบังคับ mapper ที่แบบอักษรให้เลือกแบบเมื่อใดก็ ตามที่ชื่อแบบอักษรที่ระบุตรงกันกับอุปกรณ์แบบอักษร TrueType หรือแบบอักษรแบบ raster แม้ว่าจะไม่มีแบบอักษร TrueType มีชื่อเดียวกัน)

nClipPrecision

ระบุความแม่นยำของรูปวาดที่ต้องการ ความแม่นยำของรูปวาดกำหนดวิธีการคลิปอักขระที่อยู่นอกขอบเขตของรูปวาดบางส่วน สามารถเป็นหนึ่งในค่าต่อไปนี้:

CLIP_CHARACTER_PRECIS CLIP_MASK
CLIP_DEFAULT_PRECIS CLIP_STROKE_PRECIS
CLIP_ENCAPSULATE CLIP_TT_ALWAYS
CLIP_LH_ANGLES

เมื่อต้องใช้แบบอักษรแบบอ่านอย่างเดียวที่ฝังตัว แอปพลิเคชันต้องระบุCLIP_ENCAPSULATE?

เพื่อให้บรรลุการหมุนที่สอดคล้องกันของอุปกรณ์ TrueType และแบบอักษรของเวกเตอร์ แอปพลิเคชันสามารถใช้ตัวดำเนินการหรือเพื่อรวมค่าCLIP_LH_ANGLESกับnClipPrecisionค่าอื่นใดก็ได้ ถ้าตั้งค่าบิตการCLIP_LH_ANGLESหมุนสำหรับแบบอักษรทั้งหมดขึ้นกับว่าการวางแนวของระบบพิกัดไม่ถนัดซ้าย หรือถนัดมือขวา (หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการวางแนวของระบบพิกัด ดูคำอธิบายของพารามิเตอร์nOrientation ) ถ้าไม่มีการตั้งค่าCLIP_LH_ANGLESอุปกรณ์แบบอักษรเสมอหมุนทวนเข็มนาฬิกา แต่หมุนของแบบอักษรอื่น ๆ จะขึ้นอยู่กับการวางแนวของระบบพิกัด?

nQuality

ระบุแบบอักษรของผลผลิตคุณภาพ ซึ่งกำหนดวิธีอย่างระมัดระวัง GDI ต้องพยายามให้ตรงกับคุณลักษณะตรรกะแบบอักษรไปยังของแบบอักษรที่มีอยู่จริงจริง สามารถเป็นหนึ่งในค่าต่อไปนี้:

nPitchAndFamily

ระบุระยะห่างและครอบครัวของแบบอักษร บิตต่ำลำดับสองระยะห่างของแบบอักษรที่ระบุ และเป็นหนึ่งในค่าต่อไปนี้:

DEFAULT_PITCH VARIABLE_PITCH FIXED_PITCH

โปรแกรมประยุกต์ที่สามารถเพิ่มTMPF_TRUETYPE nPitchAndFamilyพารามิเตอร์ให้เลือกแบบอักษร TrueType บิตสูงลำดับสี่ของพารามิเตอร์ระบุแบบอักษรตระกูล และสามารถเป็นหนึ่งในค่าต่อไปนี้:

lpszFacename

CStringหรือตัวชี้เป็นสตริงที่สิ้นสุดด้วยค่า null ที่ระบุชื่อแบบอักษรของแบบอักษร ความยาวของสายอักขระนี้ต้องไม่เกิน 30 อักขระ ฟังก์ชัน Windows EnumFontFamiliesสามารถใช้ระบุแบบอักษรทั้งหมดที่มีอยู่ในปัจจุบัน ถ้าlpszFacenameเป็นNULL, GDI ใช้แบบอักษรไม่ขึ้นกับอุปกรณ์?

หมายเหตุ

เริ่มต้นวัตถุCFontที่ มีลักษณะที่ระบุ ในภายหลังคุณสามารถเลือกแบบอักษรเป็นแบบอักษรสำหรับบริบทอุปกรณ์ใด ๆ?

ฟังก์ชันCreateFontสร้างแบบอักษร Windows GDI ใหม่ มันแค่เลือกใกล้เคียงจากแบบอักษรพร้อมใช้งานในสระว่ายน้ำของ GDI ของแบบอักษรที่มีอยู่จริง?

โปรแกรมประยุกต์ที่สามารถใช้การตั้งค่าเริ่มต้นสำหรับพารามิเตอร์เหล่านี้ส่วนใหญ่เมื่อสร้างแบบอักษรแบบลอจิคัล พารามิเตอร์ที่ควรจะได้รับเฉพาะค่าnHeightและlpszFacename ถ้าnHeightและlpszFacenameไม่มีกำหนด โดยโปรแกรมประยุกต์ ตรรกะแบบอักษรที่สร้างขึ้นจะขึ้นอยู่กับอุปกรณ์?

เมื่อคุณเสร็จสิ้นการ ด้วยวัตถุCFontสร้างขึ้น โดยฟังก์ชันCreateFontแรกเลือกแบบอักษรจากบริบทอุปกรณ์ แล้วลบวัตถุCFont?

ภาพรวม CFont |nbsp สมาชิกของคลาส| แผนภูมิของลำดับชั้น(&N)

ดูเพิ่มเติมnbspCFont::CreateFontIndirect, CFont::CreatePointFont, :: CreateFont, :: EnumFontFamilies, :: EnumFonts(&N)

Index