ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
µÚÈýµç×ÓÊé ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

CÓïÑÔʵÀý½Ì³Ì(PDF¸ñʽ)-µÚ65²¿·Ö

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡


lfEscapement³ÉÔ±µÄÖµÉèÖÃΪ400£¬ÕâÑù£¬Îı¾½«ÒÔÏòÉÏÇãб40¶È¡¡

£¨lfEscapementµÄÖµµÄµ¥Î»Îª1/10¶È£©µÄ½Ç¶È½øÐÐÊä³ö¡£½Ó×Å£¬ÎÒÃǽ«¡¡

¸Ã×ÖÌå¶ÔÏóͨ¹ýCDCµÄ³ÉÔ±º¯ÊýSelectObjectÑ¡ÈëÉ豸ÉÏÏÂÎÄÖÐ×÷Ϊ¡¡

É豸ÉÏÏÂÎĵĵ±Ç°×ÖÌå¡£CDCÀàµÄ³ÉÔ±º¯ÊýGetTextExtent¿ÉÒÔÔÚÊä³ö¡¡

Ò»¸ö×Ö·û´®Ö®Ç°µÃµ½¸ÃÊä³ö×Ö·û´®µÄ´óС£¬ÒÔ±ãÓÚÎÒÃÇ¿ÉÒÔÇ¡µ±µÄ°²¡¡

ÅÅ×Ö·û´®µÄÊä³öλÖá£ÐèҪעÒâµÄÊÇ£¬Í¨¹ý¸Ã³ÉÔ±º¯ÊýµÃµ½µÄ¶ÈÁ¿Öµ¡¡

²»»áÊܵ½ÎÒÃÇÔÚlfEscapementÖÐÉèÖõÄÖµµÄÓ°Ïì¡£ÔÚ³ÌÐòʾÀýÖУ¬ÎÒ¡¡

ÃÇͨ¹ý³ÉÔ±º¯ÊýGetTextExtentµÃµ½×Ö·û´®¡¨lfEscapement=¡¡¡¡400¡¨ÔÚÊä¡¡

³öʱµÄ³¤¶ÈºÍ¿í¶È£¬È»ºó¸ù¾ÝËùµÃµÄ½á¹û¼ÆËãµÃ³öÒÔ40¶È½ÇÊä³öÎı¾¡¡

´®µÄºÏÊʵÄÆðʼλÖã¬×îºóµ÷ÓÃCDCÀàµÄ³ÉÔ±º¯ÊýTextOutÒÔµ±Ç°×ÖÌå¡¡

Êä³ö×Ö·û´®¡¨lfEscapement=¡¡400¡¨¡£¡¡¡¡



¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡l¡¡²»¹Üµ±Ç°µÄlfEscapementÖµÈçºÎ£¬º¯ÊýTextOut×ÜÊÇÒÔÊä³ö×Ö·û´®¡¡

¡¡¡¡¡¡µÄµÚÒ»¸ö×Ö·ûµÄÆðʼλÖõÄ×ø±ê×÷ΪÆäÇ°Á½¸ö²ÎÊý¡£¡¡¡¡



¡¡¡¡l¡¡ÔÚWindows¡¡95ÖУ¬lfEscapementºÍlfOrientation×ÜÊǾßÓÐÏàͬµÄ¡¡

¡¡¡¡¡¡Öµ£¬¶øÔÚWindows¡¡NTÖУ¬Á½ÕßÔÚijЩÇé¿öÏ¿ÉÒÔ²»Ïàͬ¡£¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡561¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡l¡¡ÉèÖÃlfFaceNameʱӦ¸ÃʹÓÿ⺯Êýstrcpy£¬²»Òª·¸ÕâÑùµÄ´íÎ󣺡¡¡¡



¡¡¡¡l¡¡lfFaceName=¡¨ËÎÌ塨£»¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡´ËÍ⣬Èç¹ûΪlfFaceNameÉèÖÃÁËÐÂÖµ£¬Í¬Ê±Ò²Ó¦¸Ã½«¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡lfCharSetµÄÖµÉèÖÃΪÏàÆ¥ÅäµÄ×Ö·û¼¯¡£Èç¹û×Ö·û¼¯Óë×ÖÌåÃû¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡²»ÏàÆ¥Å䣬½«»áµ¼ÖÂÉèÖò»Æð×÷Óᣡ¡¡¡



ҪʹÎı¾ÏòÏÂÇãбÊä³ö£¬ÎÒÃÇÖ»Ðè¼òµ¥µÄ½«lfEscapementÉèÖÃΪ¸º¡¡

Öµ¡£ÈçÏÂÃæµÄ´úÂëËùʾ£º¡¡¡¡



//¡¡½«×ÖÌåÊä³ö·½Ïò¸ü¸ÄΪÏòÏÂÇãб¡¡40¡¡¶È¡¡¡¡



lf¡£lfEscapement=¡­400£»¡¡¡¡



dc¡£SelectObject£¨pOldFont£©£»¡¡¡¡



font2¡£DeleteObject£¨£©£»¡¡¡¡



font2¡£CreateFontIndirect£¨&lf£©£»¡¡¡¡



dc¡£SelectObject£¨&font2£©£»¡¡¡¡



//¡¡¼ÆËã×Ö·û´®ºÏÊʵÄÊä³öλÖá¡¡¡



dc¡£TextOut£¨290¡­int£¨sz¡£cx*cos£¨DegToRnd£¨40£©£©£©£»¡¡10£»¡¡¡¨lfEscapement=¡­400¡¨£©£»¡¡¡¡



ÉÏÃæµÄ´úÂëÕª×ÔÓ¦ÓóÌÐòFontDemo¡¡¡£¡¡¡¡



¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡l¡¡ÔÚµ÷ÓÃfont2µÄCreateFontIndirect³ÉÔ±º¯Êý´´½¨ÐµÄ×ÖÌå¶ÔÏóÖ®¡¡

¡¡¡¡¡¡¡¡Ç°£¬Ó¦¸ÃÏȵ÷ÓÃÆä³ÉÔ±º¯ÊýDeleteObjectɾ³ý¸Ã×ÖÌå¶ÔÏ󣬶øµ±¡¡

¡¡¡¡¡¡¡¡Ò»¸öGDIͼÐζÔÏóÕýΪÉ豸ÉÏÏÂÎÄËùʹÓÃʱ£¬ÎÒÃDz»ÄÜɾ³ý¸ÃͼÐΡ¡

¡¡¡¡¡¡¶ÔÏó£¬Òò´ËÔÚÇ°ÃæµÄ´úÂë¡¡ÖУ¬ÎÒÃÇÔÚɾ³ýÔÚfont2Ô­ÓеÄ×ÖÌå¶ÔÏó¡¡

¡¡¡¡¡¡¡¡Ö®Ç°ÏȽ«É豸ÉÏÏÂÎĵÄ×ÖÌå¶ÔÏó½øÐи´Ô­¡£¡¡¡¡



½Ó×ÅÔÚÏûÏ¢´¦Àíº¯ÊýCMyWnd£º£ºOnPaintÖУ¬ÎÒÃÇÓÖ½«lfEscapement³É¡¡

Ô±µÄÖµÉèÖÃΪ0£¬Êä³ö×Ö·û´®¡¨lfEscapement=0¡¨ÒÔʾ¶Ô±È¡£¡¡¡¡



ÔÚËæºóµÄ´úÂëÖУ¬ÎÒÃÇÑÝʾÁËlfWeight³ÉÔ±µÄ²»Í¬Öµ¶Ô×ÖÌåµÄ±Ê»®´Ö¡¡

ϸµÄÓ°Ïì¡£ÎÒÃÇÏȽ«lfWeightÖµÉèÖÃΪ0£¬ÒÔ50ÏóËصÄËÎÌå×Ö»æÖÆÁË¡¡

Ò»¸ö¡¡¡°Ï¸¡±×Ö£¬È»ºóÔÙ½«lfWeightÖµÉèÖÃΪ1000£¬ÒÔͬÑù´óСºÍͬÖÖ¡¡

×ÖÌå»æÖÆÁËÒ»¸ö¡¡¡°´Ö¡±×Ö¡£Í¨¹ýÈçͼ9¡£7µÄÊä³ö½á¹û£¬ÎÒÃÇ¿´µ½×ÖÌå¡¡

±Ê»®µÄ´Öϸ·¢ÉúµÄÃ÷ÏԵı仯¡£¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡562¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÔÚOnPaintº¯Êý·µ»Ø֮ǰ£¬²»ÒªÍü¼Ç»Ö¸´É豸ÉÏÏÂÎĵÄÔ­ÓÐ×ÖÌå¶Ô¡¡

Ïó£¬Ö¸Ïò¸Ã¶ÔÏóµÄCFontÖ¸ÕëÔÚÇ°Ãæ±»±£´æµ½ÁËÃûΪpOldFontµÄÖ¸Õë¡¡

±äÁ¿ÖС£ÎÒÃÇÈÔȻʹÓÃSelectObject½«ÆäÑ¡È뵱ǰÉ豸ÉÏÏÂÎÄ¡£¡¡¡¡



ÉÏÃæÎÒÃÇÀ´¿´Ê¾Àý³ÌÐòFontDemoµÄÁíÒ»¸öÖ÷ÒªµÄ¹¦ÄÜ°å¿é£¬¼´Ã¶¾Ùµ±¡¡

ǰϵͳÖÐËù°²×°µÄËùÓÐ×Ö·û²¢½«ËüÌí¼Óµ½Ò»¸öÁбí¿òÖС£¡¡¡¡



Ê×ÏÈÎÒÃÇÔÚ´°¿ÚCMyWndµÄWM_CREATEÏûÏ¢µÄ´¦Àíº¯ÊýOnCreateÖе÷Óá¡

CListBox¶ÔÏólst¡¡¡¡£¨¸Ã¶ÔÏ󱻶¨ÒåΪÀàCMyWndµÄ³ÉÔ±±äÁ¿£©µÄCreate³É¡¡

Ô±º¯Êý¡£ÔÚCreate³ÉÔ±º¯ÊýÖУ¬ÎÒÃÇÖ¸¶¨ÁËÁбí¿òµÄÑùʽ°üÀ¨ÁË¡¡

LBS_USETABSTOPS£¬¸ÃÑùʽÔÊÐíÔÚÁбíÏîÖÐʹÓÃÖƱí·û£¬ÕâЩÖƱí·û¡¡

ÔÚÏÔʾʱ»á±»À©Õ¹µ½Ö¸¶¨µÄλÖᣡ¡¡¡



½Ó×Å£¬ÎÒÃǽ«Áбí¿òËùʹÓõÄ×ÖÌåÉèÖÃΪ9°õ´óСµÄËÎÌå×Ö¡£ÕâÀïÎÒ¡¡

Ãǵ÷ÓõÄÊÇCFont¶ÔÏóµÄCreatePointFont³ÉÔ±º¯ÊýÀ´´´½¨×ÖÌå¡£µ±Ðè¡¡

Òª´´½¨µÄÖ¸¶¨°õÖµ´óСµÄijÖÖ×ÖÌåʱ£¬Ê¹ÓÃCreatePointFont³ÉÔ±º¯¡¡

ÊýÒª·½±ãµÃ¶à£¬Òò´Ë¸Ãº¯Êý½öÐèÒªÈý¸ö²ÎÊý£¬²¢ÇÒ£¬µÚÈý¸ö²ÎÊýÔںܡ¡

¶àÇé¿öÏ¿ÉÒÔÊ¡ÂÔ¡£ÕâÑù£¬ÎÒÃǾͿÉÒԱܿªÌîд¸´ÔÓµÄLOGFONT½á¡¡

¹¹¡£¡¡¡¡



ÔڸıäÁбí¿ò×ÖÌåµÄͬʱ£¬ÎÒÃǽ«Áбí¿òÖеĵ±Ç°ÖƱíλÉèÖÃΪ200¡¡

¸ö¶Ô»°¿òµ¥Î»£¬¶Ô»°¿òµ¥Î»ÊÇÒ»ÖÖÔڿؼþºÍ¶Ô»°¿òʹÓõĶÈÁ¿µ¥Î»¡£¡¡

ÿ4¸öˮƽ¶Ô»°¿òµ¥Î»µÈÓÚÒÔϵͳ×ÖÌåÏÔʾµÄ×Ö·ûµÄƽ¾ù¿í¶È£¬ÎÒÃÇ¡¡

»¹½«Õâ¸ö¿í¶È³Æ×÷¶Ô»°¿ò»ù±¾µ¥Î»¡£¶Ô»°¿ò»ù±¾µ¥Î»µÄ¾ßÌåÁ¿Öµ¿ÉÒÔ¡¡

ͨ¹ýAPIº¯ÊýGetDialogBaseUnitsµÃµ½£¬¸Ãº¯Êý·µ»ØÖµµÄµÍλ×Ö´ú±í¡¡

¶Ô»°¿òˮƽ»ù±¾µ¥Î»£¬¸ßλ×Ö´ú±í¶Ô»°¿ò´¹Ö±»ù±¾µ¥Î»¡£¡¡¡¡



½ô½Ó×ÅÎÒÃǵ÷ÓÃÁËAPIº¯ÊýEnumFontFamiliesÀ´Ã¶¾ÙϵͳÖеÄËùÓпɡ¡

ÓÃ×ÖÌ壬¸Ãº¯ÊýʹÓÃ4¸ö²ÎÊý£¬µÚÒ»¸ö²ÎÊýΪö¾ÙËùʹÓÃÉ豸ÉÏÏÂÎÄ¡¡

¾ä±ú£¬ÎÒÃÇʹÓÃAPIº¯ÊýGetDCÀ´µÃµ½´ú±íµ±Ç°´°¿ÚµÄ¿Í»§Çø£»ÎªÁËö¡¡

¾ÙϵͳÖеÄËùÓÐ×ÖÌ壬ÎÒÃǽ«µÚ¶þ¸ö²ÎÊýÉèÖÃΪNULL£»µÚÈý¸ö²ÎÊýΪ¡¡

ö¾Ù×ÖÌå»Øµ÷º¯Êý£¬ÕâÀïΪEnumFontFamProc£¬ÎÒÃǽ«ÔÚÏÂÃ涨Òå¸Ã¡¡

»Øµ÷º¯Êý£»µÚËĸö²ÎÊýΪָÏòÁбí¿òµÄÖ¸Õ룬Õâ¸ö²ÎÊý½«±»´«µÝ¸ø»Ø¡¡

µ÷º¯Êý£¬ÓÉÓÚÎÒÃÇÐèÒª½«¿ÉÓõÄ×ÖÌåÌí¼Óµ½Áбí¿òÖУ¬Òò´ËÎÒÃÇ¿ÉÒÔ¡¡

ºÜ×ÔÈ»µÄ½«Ö¸Ïò¸ÃÁбí¿òÖ¸Õ뵱ǰӦÓóÌÐòÌṩµÄ²ÎÊý´«µÝ¸øö¾Ù×Ö¡¡

Ìå»Øµ÷º¯Êý¡£¡¡¡¡



ö¾Ù×ÖÌå»Øµ÷º¯ÊýµÄÔ­ÐÍÔÚ³ÌÐòÖб»ÉùÃ÷Ϊ¡¡¡¡



int¡¡WINAPI¡¡EnumFontFamProc£¨const¡¡LOGFONTA¡¡*lplf£»¡¡¡¡¡¡



const¡¡TEXTMETRICA¡¡*lptm£»¡¡unsigned¡¡long¡¡FontType£»¡¡LPARAM¡¡lParam£©£»¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡563¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡l¡¡ÔÚËæVisual¡¡C£«£«¡¡5¡£0ÌṩµÄPlatform¡¡SDK¡¡£¨¼´Win32¡¡SDK£©ÖÐËù¸ø¡¡

¡¡¡¡¡¡¡¡³öµÄEnumFontFamProcµÄÔ­ÐÍΪ¡¡¡¡



¡¡¡¡l¡¡int¡¡CALLBACK¡¡EnumFontFamProc£¨¡¡ENUMLOGFONT¡¡FAR¡¡*lpelf£»¡¡//¡¡pointer¡¡to¡¡logical

¡¡¡¡¡¡¡¡font¡¡data¡¡¡¡



¡¡¡¡l¡¡NEWTEXTMETRIC¡¡FAR¡¡*lpntm£»¡¡//¡¡pointer¡¡to¡¡physical¡­font¡¡data¡¡¡¡



¡¡¡¡l¡¡int¡¡FontType£»¡¡//¡¡type¡¡of¡¡font¡¡¡¡



¡¡¡¡l¡¡LPARAM¡¡lParam¡¡//¡¡address¡¡of¡¡application¡­defined¡¡data¡¡¡¡



¡¡¡¡l¡¡£©£»¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡È»¶øÔÚ±¾³ÌÐòÖÐʹÓÃÉÏÃæËù¸øµÄÔ­Ðͽ«»áÔÚ±àÒëʱµ¼ÖÂÀàÐÍ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡²»Æ¥Åä¡£ÕýÈ·µÄ»Øµ÷º¯ÊýµÄÔ­ÐÍÓ¦¸ÃÈç´úÂëÇåµ¥ÖÐËù¸øµÄÄÇ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ñù¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼9¡£¡¡7¡¡Ê¾Àý³ÌÐòFontDemoµÄÔËÐнá¹û¡¡¡¡



ÔÚ±¾³ÌÐòÖУ¬´«µÝ¸ø»Øµ÷º¯ÊýµÄµÚÒ»¸ö²ÎÊýlplfΪ¸Ã×ÖÌå¶ÔÓ¦µÄ¡¡

LOGFONTA½á¹¹£¬×îºóÒ»¸ö²ÎÊýΪָÏòÁбí¿òµÄCListBoxÖ¸Õë¡£µÚ¶þ¸ö¡¡

²ÎÊýºÍµÚÈý¸ö²ÎÊýÔÚ±¾³ÌÐòÖÐûÓÐʹÓá£ÔÚ±¾³ÌÐòÖУ¬Ã¶¾Ù×ÖÌå»Øµ÷¡¡

º¯ÊýµÄ½á¹¹ºÜ¼òµ¥£¬ËüÖ»Êǽ«×ÖÌåµÄ×ÖÌåÃûºÍÏàÓ¦µÄ×Ö·û¼¯¸ñʽ»¯Ö®¡¡

ºóÌí¼Óµ½Áбí¿òÖС£ÎªÁËʹö¾Ù¼ÌÐø½øÐУ¬»Øµ÷º¯ÊýÓ¦¸Ã·µ»ØÕæÖµ£¬¡¡

Èç¹û»Øµ÷º¯Êý·µ»ØÁËFALSE£¬Ôòö¾ÙµÄ¹ý³Ì½«±»ÖÕÖ¹¡£¡¡¡¡



ʾÀý³ÌÐòFontDemoµÄÔËÐнá¹ûÈçͼ9¡£7Ëùʾ¡£¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡564¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÔÚÀàCDCÖж¨ÒåµÄ×ÖÌåºÍÎı¾º¯ÊýÈç±íËùʾ¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡±í9¡£¡¡5¡¡ÔÚÀàCDCÖж¨ÒåµÄ×ÖÌåºÍÎı¾º¯Êý¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡³ÉÔ±º¯Êý¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÃèÊö¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡TextOut¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚÖ¸¶¨Î»ÖÃÒÔµ±Ç°Ñ¡¶¨×ÖÌå»æÖÆ×Ö·û´®¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡ExtTextOut¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚÖ¸¶¨µÄ¾ØÐÎÇøÓòÄÚʹÓõ±Ç°Ñ¡¶¨×ÖÌå¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»æÖÆ×Ö·û´®¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡TabbedTextOut¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÒÔÖ¸¶¨µÄλÖûæÖÆ×Ö·û´®£¬²¢°´Ö¸¶¨µÄ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖƱí·ûλÖÃÀ©Õ¹×Ö·û´®µÄÖƱí·û¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡DrawText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚÖ¸¶¨µÄ¾ØÐÎÇøÓòÄÚ»æÖƸñʽ»¯Îı¾¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTextExtent¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ê¹Óõ±Ç°×ÖÌåÖÐÊôÐÔÉ豸ÉÏÏÂÎÄÖмÆËã¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ò»ÐÐÎı¾µÄ¿í¶ÈºÍ¸ß¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetOutputTextExtent¡¡¡¡ÔÚÊä³öÉ豸ÉÏÏÂÎÄÖмÆËãÒ»×Ö·û´®µÄ¿í¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶ÈºÍ¸ß¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTabbedTextExtent¡¡¡¡ÔÚÊôÐÔÉ豸ÉÏÏÂÎÄÖмÆËãÒ»×Ö·û´®µÄ¿í¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶ÈºÍ¸ß¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetOutputTabbedTextExtent¡¡¡¡ÔÚÊä³öÉ豸ÉÏÏÂÎÄÖмÆËãÒ»×Ö·û´®µÄ¿í¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶ÈºÍ¸ß¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GrayString¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚÖ¸¶¨Î»ÖûæÖƱä»ÒµÄÎı¾¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTextAlign¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ñµÃÎı¾¶ÔÆë±êÖ¾¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡SetTextAlign¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÉèÖÃÎı¾¶ÔÆë±êÖ¾¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTextFace¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡½«µ±Ç°×ÖÌåµÄ×ÖÌåÃû¿½±´µ½»º³åÇø¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTextMetrics¡¡¡¡¡¡¡¡¡¡¡¡´ÓÊôÐÔÉ豸ÉÏÏÂÎÄÖлñµÃµ±Ç°×ÖÌåµÄ¶È¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Á¿Öµ¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetOutputTextMetrics¡¡¡¡´ÓÊä³öÉ豸ÉÏÏÂÎÄÖлñµÃµ±Ç°×ÖÌåµÄ¶È¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Á¿Öµ¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡SetTextJustification¡¡¡¡ÔÚ×Ö·û´®µÄ·Ö¸ô×Ö·û´¦Ìí¼Ó¿Õ°×¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetTextCharacterExtra¡¡¡¡»ñµÃ×Ö·û¼ä¿Õ°×µÄµ±Ç°ÉèÖá¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡SetTextCharacterExtra¡¡¡¡ÉèÖÃ×Ö·û¼ä¿Õ°×µÄµ±Ç°ÉèÖá¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡GetFontData¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡´Ó¿ÉËõ·Å×ÖÌåÎļþÖлñÈ¡×ÖÌåÐÅÏ¢¡£Ëù¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ñÈ¡µÄÐÅϢͨ¹ýÖ¸¶¨×ÖÌåÎļþÖеÄÆ«ÒÆ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Á¿ºÍ·µ»ØÐÅÏ¢µÄ³¤¶ÈÀ´È·¶¨¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡565¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡GetKerningPairs¡¡¡¡ÔÚÑ¡¶¨µÄÉ豸ÉÏÏÂÎÄÖлñµÃµ±Ç°Ñ¡¶¨×Ö¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÌåµÄ×Ö¾àµ÷Õû×Ö·û¶Ô¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetOutlineTextMetrics¡¡¡¡»ñµÃTrueType×ÖÌåµÄ×ÖÌå¶ÈÁ¿ÐÅÏ¢¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetGlyphOutline¡¡¡¡·µ»Øµ±Ç°×ÖÌåµÄ×Ö·ûµÄÂÖÀªÇúÏß»òλͼ¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetCharABCWidths¡¡¡¡´Óµ±Ç°×ÖÌåÖÐÒÔÂß¼­µ¥Î»·µ»Ø¸ø¶¨·¶Î§¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄÁ¬Ðø×Ö·ûµÄ¿í¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetCharWidth¡¡¡¡¡¡¡¡¡¡´Óµ±Ç°×ÖÌåÖзµ»Ø¸ø¶¨·¶Î§µÄÁ¬Ðø×Ö·û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄÏà¶Ô¿í¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetOutputCharWidth¡¡¡¡´ÓÊä³öÉ豸ÉÏÏÂÎÄÖеĵ±Ç°×ÖÌå·µ»ØÁ¬¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ðø×Ö·û×éÖÐÈô¸Éµ¥¸ö×Ö·ûµÄ¿í¶È¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ðø±í9¡£5¡¡



¡¡¡¡¡¡¡¡¡¡¡¡³ÉÔ±º¯Êý¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÃèÊö¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡SetMapperFlags¡¡¡¡¸Ä±ä×ÖÌåÓ³Éä³ÌÐòÖдÓÂß¼­×Ö·ûµ½ÎïÀí×ÖÌå¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄÓ³Éä¹ý³ÌÖÐËùʹÓõÄËã·¨¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡GetAspectRatioFilter¡¡¡¡»ñµÃµ±Ç°×ݺá±È¹ýÂËÆ÷µÄÉ趨¡¡¡¡



ÔÚһЩӦÓóÌÐò¡¡£¨Èç×Ö´¦ÀíÓ¦ÓóÌÐò£©ÖУ¬ÎÒÃÇÒ»°ãÐèÒªÓÉÓû§À´Ö¸¶¨¡¡

ËùʹÓõÄ×ÖÌå¡£Õâʱ³£Ê¹Óõķ½·¨Êǵ¯³öÒ»¸ö×ÖÌå¶Ô»°¿ò£¬Óû§Í¨¹ý¡¡

¸Ã×ÖÌå¶Ô»°¿òÀ´ÉèÖÃÓ¦ÓóÌÐòËùʹÓõÄ×ÖÌå¡£MFCÀàCFontDialog·â×°¡¡

Á˱ê×¼µÄWindows×ÖÌå¶Ô»°¿ò¡£ÔÚ×î¼òµ¥µÄÇé¿öÏ£¬ÎÒÃÇÖ»ÐèÒªÉùÃ÷¡¡

Ò»¸öÀàµÄʵÀý¶ÔÏóCFontDialog£¬È»ºóͨ¹ý¸Ã¶ÔÏóµ÷ÓÃÀàCFongDialog¡¡

µÄ³ÉÔ±º¯ÊýDoModal£¬Èç¹û¸Ã³ÉÔ±º¯Êý·µ»ØIDOK£¬Ôòͨ¹ý³ÉÔ±º¯Êý¡¡

GetCurrentFont½«Óû§ËùÑ¡ÔñµÄ×ÖÌåÐÅÏ¢ÌîÈëÒ»¸öLOGFONT½á¹¹ÖУ¬¡¡

ÔÚÏÂÃæµÄ¹ý³ÌÖм´¿Éͨ¹ý¸Ã½á¹¹´´½¨CFont¶ÔÏó¡£ÔںܶàÇé¿öÏ£¬ÎÒ¡¡

ÃÇÐèҪΪ×ÖÌå¶Ô»°¿òÉèÖÃһЩ³õʼֵ£¬Ò»Öֺܼòµ¥µÄ·½Ê½ÔÚÆä¹¹Ô캯¡¡

ÊýÖд«µÝÒ»¸öÖ¸ÏòLOGFONT½á¹¹¶ÔÏóµÄÖ¸Õë¡£ÎÒÃÇ¿ÉÒÔÔÚ´´½¨¡¡

CFontDialog¶ÔÏóÖ®ºó£¬µ÷ÓÃDoModal³ÉԱ֮ǰ¸Ä±äÆäÀàÐÍΪ¡¡

CHOOSEFONTµÄ³ÉÔ±½á¹¹m_cfµÄ¸÷³ÉÔ±µÄÖµÀ´Îª×ÖÌå¶Ô»°¿ò½øÐгõʼÉè¡¡

Öᣡ¡¡¡



9¡£4¡£4¡¡´´½¨ÌØÊâµÄ×ÖÌåЧ¹û¡¡¡¡



ÔÚÒ»°ãµÄÓ¦ÓóÌÐòÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃSetBkModeºÍSetBkColorÀ´ÉèÖá¡

»æÖÆÎı¾ËùʹÓõÄÑÕÉ«ºÍģʽ£¬µ«ÊÇ£¬ÕâÁ½¸öº¯ÊýËùÉèÖõÄЧ¹ûÊǺܡ¡

ÓÐÏ޵ġ£ÓÐʱºòÎÒÃÇ¿ÉÄÜÏ£ÍûµÃµ½Ò»Ð©ÌØÊâµÄÎı¾Êä³öЧ¹û¡£ÕâʱÎÒ¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡566¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÃǾÍÓ¦¸Ã¿¼ÂÇÆäËüÌØÊâµÄʵÏÖ·½Ê½¡£Ê¹Ó÷¾¶ÊÇÆäÖеÄÒ»ÖÖ·½·¨¡£Ï¡¡

ÃæÎÒÃǽ²ÊöһЩʹÓ÷¾¶µÃµ½µÄÌØÊâµÄ×ÖÌåЧ¹û¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡£¨1£©¡¡¿ÕÐÄ×Ö¡¡¡¡



ÔÚ¿ªÊ¼Ò»¸ö·¾¶Ç°£¬ÎÒÃÇÏȵ÷ÓÃCDCÀàµÄ³ÉÔ±º¯ÊýBeginPath£¬È»ºóµ÷¡¡

ÓÃһϵÁеÄÊä³öº¯Êý£¬ÔÚÍê³É»æÖÆÖ®ºó£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃCDCÀàµÄ³ÉÔ±¡¡

º¯ÊýEndPath¡£ÔÚÍê³ÉÒ»¸ö·¾¶Ö®ºó£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃStrokePathÀ´»æ¡¡

ÖƸ÷¾¶¡£ÎªÁ˼òµ¥Æð¼û£¬ÎÒÃǽö¸ø³öÓ¦ÓóÌÐòµÄOnPaint³ÉÔ±º¯Êý¡¡

ÈçÏ£º¡¡¡¡



//¡¡Ó¦ÓóÌÐòÖ÷´°¿ÚµÄÖػ溯Êý¡¡¡¡



void¡¡CMyWnd£º£ºOnPaint£¨£©¡¡¡¡



£û¡¡¡¡



//¡¡»ñµÃ´°¿ÚµÄ¿Í»§ÇøÉ豸ÉÏÏÂÎľä±ú¡¡¡¡



CPaintDC¡¡dc£¨this£©£»¡¡¡¡



//¡¡¸ü¸Äµ±Ç°×ÖÌå¡¡¡¡



LOGFONT¡¡lf£»¡¡¡¡



dc¡£GetCurrentFont£¨£©¡­¡·GetLogFont£¨&lf£©£»¡¡¡¡



CFont¡¡font£»¡¡¡¡



CFont¡¡*pOldFont£»¡¡//¡¡±£´æÉ豸ÉÏÏÂÎÄ×î³õʹÓõÄ×ÖÌå¶ÔÏó¡¡¡¡



lf¡£lfCharSet=134£»¡¡¡¡



lf¡£lfHeight=¡­150£»¡¡¡¡



lf¡£lfWidth=0£»¡¡¡¡



strcpy£¨lf¡£lfFaceName£»¡¡¡¨Á¥Ê顨£©£»¡¡¡¡



font¡£CreateFontIndirect£¨&lf£©£»¡¡¡¡



pOldFont=dc¡£SelectObject£¨&font£©£»¡¡¡¡



dc¡£SetBkMode£¨TRANSPARENT£©£»¡¡¡¡



//¡¡¸ü¸Äµ±Ç°»­±Ê¡¡¡¡



CPen¡¡pen£¨PS_SOLID£»¡¡1£»¡¡RGB£¨255£»¡¡0£»¡¡0£©£©£»¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡567¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

CPen¡¡*pOldPen£»¡¡¡¡



pOldPen=dc¡£SelectObject£¨&pen£©£»¡¡¡¡



//¡¡¿ªÊ¼Ò»¸ö·¾¶¡¡¡¡



dc¡£BeginPath£¨£©£»¡¡¡¡



dc¡£TextOut£¨10£»¡¡10£»¡¡¡¨¿ÕÐÄ×Ö¡¨£©£»¡¡¡¡



dc¡£EndPath£¨£©£»¡¡¡¡



//¡¡»æÖÆ·¾¶¡¡¡¡



dc¡£StrokePath£¨£©£»¡¡¡¡



//¡¡»Ö¸´É豸ÉÏÏÂÎĵÄÔ­ÓÐÉèÖá¡¡¡



dc¡£SelectObject£¨pOldFont£©£»¡¡¡¡



dc¡£SelectObject£¨pOldPen£©£»¡¡¡¡



£ý¡¡¡¡



ÉÏÃæµÄ³ÌÐòµÄÔËÐнá¹ûÈçͼ9¡£8Ëùʾ¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼9¡£¡¡8¡¡»æÖÆ¿ÕÐÄ×Ö¡¡¡¡



º¯ÊýFillPath¿ÉÒÔʹÓõ±Ç°Ë¢×
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨1£© ²È£¨1£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡