ΠΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ°
ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΡΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π²Π° Π΄ΡΡΠ³ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ½Π° OPAQUE (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ), ΡΠΎ Π΄Π»Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ½Π° ΠΏΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΡΠΎΠ½ΠΎΠΌ ΠΎΠΊΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΈΡΡΡΡ. Π ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΠΎΠ½ ΠΏΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠΌ Π½Π΅ Π½Π°Π΄ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ TRANSPARENT (ΠΏΡΠΈ ΡΡΠΎΠΌ Π°ΡΡΠΈΠ±ΡΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ°.
ΠΡΠ½ΠΎΠ²Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°.
ΠΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΌΡΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Windows Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ Π²ΡΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠΈΡΡΠΎΠ². ΠΠ° ΡΡΠΎΠΉ Π»Π΅ΠΊΡΠΈΠΈ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΈΡΡΠΎΠ².
Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°. Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠΈΡ Π²ΡΠ²ΠΎΠ΄ ΠΌΡ ΡΠΆΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»ΠΈΡΡ:
BOOL TextOut (hDC, nXStart, nYStart, lpsString, wLength);
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΠΊΡΡΠ°, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ lpsString, Π΄Π»ΠΈΠ½ΠΎΠΉ wLength ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ (nXStart, nYStart) Π½Π° Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° hDC.
ΠΡΠΎ ΡΠ°ΠΌΠ°Ρ ΠΏΡΠΎΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² Windows. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ.
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΡΠ²Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° Π·Π°Π΄Π°Π΅ΡΡΡ ΡΡΠ΅ΠΌΡ ΡΠ°Π·Π½ΡΠΌΠΈ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π°: ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ°, ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ½Π° ΠΈ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ½Π°. Π Π°Π½Π΅Π΅ ΠΌΡ ΡΠΆΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ ΡΡΠΈ Π°ΡΡΠΈΠ±ΡΡΡ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΉ Ρ ΡΡΠΈΠΌΠΈ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ:
COLORREF SetTextColor (hDC, crColor);
COLORREF GetTextColor (hDC);
COLORREF SetBkColor (hDC, crColor);
COLORREF GetBkColor (hDC);
int SetBkMode (hDC, nMode);
int GetBkMode (hDC);
ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ SetTextColor (), ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ²Π΅ΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠΉ ΡΠΈΡΡΡΠΉ ΡΠ²Π΅Ρ, Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅.
ΠΠ»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΡΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π²Π° Π΄ΡΡΠ³ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ½Π° OPAQUE (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ), ΡΠΎ Π΄Π»Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ½Π° ΠΏΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΡΠΎΠ½ΠΎΠΌ ΠΎΠΊΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΈΡΡΡΡ. Π ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΠΎΠ½ ΠΏΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΠΌ Π½Π΅ Π½Π°Π΄ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ TRANSPARENT (ΠΏΡΠΈ ΡΡΠΎΠΌ Π°ΡΡΠΈΠ±ΡΡ «ΡΠ²Π΅Ρ ΡΠΎΠ½Π°» ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ).
ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠ΅ΠΊΡΡΠ° Π·Π°Π΄Π°Π΅ΡΡΡ Π΅Π³ΠΎ Π½Π°ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠΉ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π½Π΅ ΡΠ°ΠΊ-ΡΠΎ ΠΈ ΠΏΡΠΎΡΡΠΎ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΡΠΈΠΌ, Π½Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π²Π²Π΅ΡΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΠΎΠ²ΡΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ ΡΡΡΠΎΠΊ.
Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΡΠ΅ΠΉΠΊΠ΅ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ ΠΎΡ Π²ΡΠ΅Ρ ΡΠ΅ΡΡΡΠ΅Ρ Π³ΡΠ°Π½ΠΈΡ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΎΡΠ½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ:
BOOL GetTextMetrics (hDC, lpTEXTMETRIC);
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΡΡΠΊΡΡΡΡ TEXTMETRIC ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΌ ΡΡΠΈΡΡΠ΅. Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»Ρ ΡΡΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π² ΡΡΡΡΠΊΡΡΡΠ΅ TEXTMETRIC. ΠΠΎΠ·ΠΆΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠΌ ΡΡΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ.
ΠΠ±ΡΡΠ½ΠΎ Π·Π° Π²ΡΡΠΎΡΡ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΡΠΌΠΌΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² tmHeight ΠΈ tmExternalLeading, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ» Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΠΊ.
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΡΠΈΠ½Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΈ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ. ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Windows ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊΠ°ΠΊ ΡΡΠΈΡΡΡ Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΠΈΠ½ΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»Π° (fixed pitch), ΡΠ°ΠΊ ΠΈ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ (variable pitch) ΡΡΠΈΡΡΡ. ΠΠΎΡΡΠΎΠΌΡ Π² ΡΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎ ΡΡΠΈΡΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°: ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΡΠΈΠ½Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° tmMaxCharWidth ΠΈ ΡΡΠ΅Π΄Π½ΡΡ ΡΠΈΡΠΈΠ½Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° tmAveCharWidth.
ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ±Π΅ΠΈΠΌΠΈ ΡΡΠΈΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΎΡΠ΅Π½Ρ Π½Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΠΈΠ½Ρ ΠΌΠΎΠΆΠ΅Ρ Π΄Π°Π²Π°ΡΡ ΡΠΈΠ»ΡΠ½ΠΎ Π·Π°Π²ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, Π° ΡΡΠ΅Π΄Π½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΈΠ±Π°ΡΡΡΡ Π² Π»ΡΠ±ΡΡ ΡΡΠΎΡΠΎΠ½Ρ. ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ½Π° Π΄Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π΄Π»ΠΈΠ½Π½ΡΡ ΡΡΡΠΎΠΊ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΡΠ΅Π΄Π½Π΅ΠΉ ΡΠΈΡΠΈΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΡΡΠΎΡΡ Π²ΡΡΡΠ΅ΡΠ°Π΅ΠΌΠΎΡΡΠΈ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΎΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ ΠΊΠ°ΠΊ Π² Π²ΡΡΠΎΡΡ, ΡΠ°ΠΊ ΠΈ Π² ΡΠΈΡΠΈΠ½Ρ:
DWORD GetTextExtent (hDC, lpsString, wLength);
BOOL GetTextExtentPoint (hDC, lpsString, wLength, lpSize);
ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ² ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π»ΠΈΠ±ΠΎ Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° (Π² ΠΌΠ»Π°Π΄ΡΠ΅ΠΌ ΡΠ»ΠΎΠ²Π΅ Ρ ΡΠ°Π½ΠΈΡΡΡ ΡΠΈΡΠΈΠ½Π°, Π² ΡΡΠ°ΡΡΠ΅ΠΌ — Π²ΡΡΠΎΡΠ° ΡΡΡΠΎΠΊΠΈ), Π»ΠΈΠ±ΠΎ Π² ΡΡΡΡΠΊΡΡΡΠ΅ ΡΠΈΠΏΠ° SIZE, Π°Π΄ΡΠ΅Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅. ΠΠΌΠ΅ΡΡΠΎ ΡΡΡΡΠΊΡΡΡΡ SIZE ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° ΡΡΡΡΠΊΡΡΡΠ° POINT, (ΡΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠ°Π½ΡΡΠ΅, ΡΡΠΎ ΠΈ Π΄Π°Π»ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ). ΠΠ±Π΅ ΡΡΠΈ ΡΡΡΡΠΊΡΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΊΠΎΠ³Π΄Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π²ΡΡΠΎΡΠ° ΡΡΡΠΎΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠΎΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ ΠΠ°ΡΠ° ΡΡΡΠΎΠΊΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠΎ Π΅Π΅ Π²ΡΡΠΎΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ ΠΏΠΎΠ»Π½Π°Ρ Π²ΡΡΠΎΡΠ° Π·Π½Π°ΠΊΠΎΠΌΠ΅ΡΡΠ°.
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π±ΡΠ²Π°Π΅Ρ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΡΠΎΡΠ½ΡΡ ΡΠΈΡΠΈΠ½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°. (ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠ΅ΡΠΊΠΈ ΠΈΠ»ΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΡΠ΅ΠΊΡΡΠ°.) ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ.
BOOL GetCharWidth (hDC, uFirstChar, uLastChar, lpnWidths);
BOOL GetCharABCWidth (hDC, uFirstChar, uLastChar, lpABC);
Π€ΡΠ½ΠΊΡΠΈΡ GetCharWidth () ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΡΠΈΠ½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°, Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π² ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΎΡ uFirstChar Π΄ΠΎ uLastChar ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π», ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ lpnWidths.
Π€ΡΠ½ΠΊΡΠΈΡ GetCharABCWidth () Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΈΡΠΈΠ½Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ TrueType ΡΡΠΈΡΡΠ°ΠΌΠΈ.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ΡΡΡΡΠΊΡΡΡ ΡΠΈΠΏΠ° ABC, ΡΠΌΡΡΠ» ΠΏΠΎΠ»Π΅ΠΉ ΠΏΠΎΡΡΠ½ΠΈΠΌ ΡΠΈΡΡΠ½ΠΊΠΎΠΌ:
Π-ΡΡΠ΅ΡΡΠΈΡ , ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠ΅ΠΊΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ TextOut () (ΠΈΠ»ΠΈ ExtTextOut ()), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π°ΡΡΠΈΠ±ΡΡ GDI, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ «ΡΠ΅ΠΆΠΈΠΌ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ°». ΠΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ:
UINT SetTextAlign (hDC, nAlign);
UINT GetTextAlign (hDC);
ΠΡΠΎΡ Π°ΡΡΠΈΠ±ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ΅ΠΊΡΡΠ° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ. ΠΠ±ΡΡΠ½ΠΎ ΡΠΊΠ°Π·Π°Π½Π½Π°Ρ ΡΠΎΡΠΊΠ° Π·Π°Π΄Π°Π΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° ΡΡΡΠΎΠΊΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ SetTextAlign () Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ΅ΠΆΠΈΠΌ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ nAlign ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·Π°Π΄Π°Π΅ΡΡΡ:
ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ. | ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ. | |
TA_LEFT (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ). | TA_TOP (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ). | |
TA_CENTER. | TA_BASELINE. | |
TA_RIGHT. | TA_BOTTOM. | |
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠ° Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π±Π΅Π· Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠΈΡΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ ΡΠ°ΠΌΠΈΠΌ, Π° ΠΏΠ΅ΡΠ΅Π»ΠΎΠΆΠΈΡΡ ΡΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π° Windows.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΡ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ TA_UPDATECP ΠΈ TA_NOUPDATECP (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ). ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ TA_UPDATECP, ΡΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΠΊΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ, Π° Π²ΠΌΠ΅ΡΡΠΎ Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π°ΡΡΠΈΠ±ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π° «ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΈ». ΠΠΎΡΠ»Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΡΠ° ΡΠ΅ΠΊΡΡΠ°Ρ ΡΠΎΡΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π½Π° ΠΏΡΠ°Π²ΡΡ Π³ΡΠ°Π½ΠΈΡΡ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°.
ΠΠ»Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΈ Π² Π½ΡΠΆΠ½ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ (ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΡΠΎ ΡΡΡΠΎΠΊΠΈ Π½Π° ΡΡΡΠΎΠΊΡ) ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ:
DWORD MoveTo (hDC, nX, nY);
Π-ΡΠ΅ΡΠ²Π΅ΡΡΡΡ , Π½Π° Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π²Π»ΠΈΡΡΡ Π°ΡΡΠΈΠ±ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ GDI ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ.
ΠΠ΅ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ.
int SetTextCharacterExtra (hDC, nExtraSpace);
ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠΎΡΠ΅Π΄Π½ΠΈΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ. Π‘ Π΅Π΅ ΠΏΠΎΠΌΠΎΡΡΡ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ «ΡΠ°Π·ΡΡΠ΄ΠΈΡΡ» ΡΡΡΠΎΠΊΡ ΠΈΠ»ΠΈ ΡΠ»ΠΎΠ²ΠΎ ΡΠ°ΠΊ, ΡΡΠΎ Π±Ρ Π΅Π΅ Π΄Π»ΠΈΠ½Π° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΡΠ°Π²Π½Π° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Π΅.
ΠΡΠΎΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠΈΡΠΈΠ½Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ»ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ΅. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ «ΡΠΈΠΌΠ²ΠΎΠ»-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ» (Break Char). ΠΠ°ΠΊΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Ρ. tmBreakChar ΡΡΡΡΠΊΡΡΡΡ TEXTMETRIC, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΡΠΈΡΡΠΎΠ² ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΡΠ°Π·Π½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΠΏΡΠΎΠ±Π΅Π».
int SetTextJustification (hDC, nExtraSpace, cBreakChars);
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΈΡΠΈΠ½Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π°-ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ Π±Ρ cBreakChars, Π²ΡΡΡΠ΅ΡΠ΅Π½Π½ΡΡ Π² ΡΡΡΠΎΠΊΠ΅, ΡΠ²Π΅Π»ΠΈΡΠΈΠ»ΠΈ Π΅Π΅ ΡΠΈΡΠΈΠ½Ρ Π½Π° nExtraSpace Π΅Π΄ΠΈΠ½ΠΈΡ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°.
Π Π°ΡΡΠΌΠΎΡΡΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ TextOut () ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅ΠΉ. Π£ Π½Π΅Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ½Π° Π½Π΅ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ΅ ΡΠΈΠΏΠ° ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠΎΠΊΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΠΊΠ°ΡΠ΅ΡΠΊΠΈ. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠΈΡ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ°.
ΠΡΠ»ΠΈ ΡΡΡΠΎΠΊΠ° ΡΠ΅ΠΊΡΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ, ΡΠΎ ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ TextOut () ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ:
LONG TabbedTextOut (.
hDC, nXStart, nYStart, lpsString, wLength, cTabStops, lpnTabPositions, nTabOrigin);
ΠΠ΅ΡΠ²ΡΠ΅ 5 ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΡΡΠ½ΠΊΡΠΈΠΈ TextOut (), Π° ΡΡΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ lpnTabPositions ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ°ΡΡΠΈΠ² x-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠΎΡΠ΅ΠΊ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠ°Π±ΡΠ»ΡΡΠΎΡΠ°. ΠΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½ Π² Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ cTabStops Π·Π°Π΄Π°Π΅Ρ ΡΠΈΡΠ»ΠΎ ΡΠ°ΠΊΠΈΡ ΡΠΎΡΠ΅ΠΊ.
ΠΡΡΡ Π΄Π²Π΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ Π² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΡΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²:
Π΅ΡΠ»ΠΈ ΠΎΠ±Π° ΠΎΠ½ΠΈ ΡΠ°Π²Π½Ρ 0, ΡΠΎ ΡΠ°Π±ΡΠ»ΡΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΆΠ΄ΡΡ 8 ΡΡΠ΅Π΄Π½ΠΈΡ ΡΠΈΡΠΈΠ½ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
Π΅ΡΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΡΠΈΡΠ»ΠΎ N (ΠΈ cTabStops ΡΠ°Π²Π½ΠΎ 1), ΡΠΎ ΡΠ°Π±ΡΠ»ΡΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΆΠ΄ΡΠ΅ N Π΅Π΄ΠΈΠ½ΠΈΡ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ nTabOrigin ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ x-ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΡΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΡΠ»ΡΡΠΎΡΠ°. Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
Π‘ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π²Π²Π΅ΡΡΠΈ Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΉ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ:
DWORD GetTabbedTextExtent (hDC, lpsString, wLength, cTabStops, lpnTabPositions);
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° nTabOrigin, ΠΏΠΎΡΡΠΎΠΌΡ Π΅Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ TabbedTextOut (…).
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΠΊΡΡΠ° ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΠ°Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ ΡΡΡΠΎΠΊΠΈ:
BOOL ExtTextOut (hDC, nXStart, nYStart, fuOption, lpRect, lpsString, wLength, lpnDx);
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ hDC, nXStart, nYStart, lpsString ΠΈ wLength ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΡΡΠ½ΠΊΡΠΈΠΈ TextOut (). ΠΠ²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° fuOption ΠΈ lpRect Π·Π°Π΄Π°ΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°.
ΠΡΠ»ΠΈ fuOption ΡΠ°Π²Π½ΠΎ ETO_OPAQUE, ΡΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ½Π°; Π΅ΡΠ»ΠΈ fuOption ΡΠ°Π²Π½ΠΎ ETO_CLIPPED, ΡΠΎ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΎΠ±Π»Π°ΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°. ΠΠ±Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° fuOption ΠΈ lpRect ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ 0, ΡΠΎΠ³Π΄Π° ΡΠ°ΠΊΠΎΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ.
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ lpnDx ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΌΠ°ΡΡΠΈΠ² ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π», ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Π·Π° Π½ΠΈΠΌ. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ NULL, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΈ.
Π€ΡΠ½ΠΊΡΠΈΡ.
int DrawText (hDC, lpszString, wLength, lpRect, fuFormat);
ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ°. ΠΠ΅ΡΠ²ΡΠ΅ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Ρ ΡΠ°ΠΊΠΈΠΌ-ΠΆΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ TextOut (), Π·Π° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ: ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π²Π½ΠΎΠΉ -1, ΡΠΎΠ³Π΄Π° Windows Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡ, ΡΡΠΎ ΡΡΠΎ asciiz ΡΡΡΠΎΠΊΠ° (ΠΎΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠ°ΡΡΡ Π½ΡΠ»Π΅Π²ΡΠΌ Π±Π°ΠΉΡΠΎΠΌ) ΠΈ ΡΠ°ΠΌ Π²ΡΡΠΈΡΠ»ΠΈΡ Π΅Π΅ Π΄Π»ΠΈΠ½Ρ.
ΠΠ²Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΡ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ Π²ΡΠ²ΠΎΠ΄, ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° Π² ΡΡΠΎΠΌ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ΅.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ fuFormat ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π°Π³ΠΈ:
DT_CENTER. DT_LEFT. DT_RIGHT. | Π·Π°Π΄Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ. | |
DT_SINGLELINE. | ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΠ΅ΠΊΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅. | |
DT_VCENTER. DT_TOP. DT_BOTTOM. | ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ DT_SINGLELINE ΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΠΊΡΡΠ° ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ. | |
DT_WORDBREAK. | ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡ (ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ) ΡΠ»ΠΎΠ²Π°. | |
DT_EXPANDTABS. | ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π±ΡΠ»ΡΡΠΎΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ 8 ΠΏΠΎΠ·ΠΈΡΠΈΠΈ. | |
DT_TABSTOP. | Π·Π°Π΄Π°Π΅Ρ ΡΠ°Π³ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ. Π‘ΡΠ°ΡΡΠΈΠΉ Π±Π°ΠΉΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΡΠ»ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°Π³Π΅ ΡΠ°Π±ΡΠ»ΡΡΠΎΡΠ°. | |
ΠΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΠ»Π°Π³ΠΈ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡ Ρ ΡΠ»Π°Π³ΠΎΠΌ DT_TABSTOP: | ||
DT_EXTERNALLEADING. | Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² Π²ΡΡΠΎΡΡ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠΎΠΏΡΡΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠΎΠΊ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅ΡΡΡ. | |
DT_NOCLIP. | Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ. ΠΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΊΠΎΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠ²ΠΎΠ΄Π°. | |
DT_NOPREFIX. | ΠΈΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° & ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π°. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠ΅ΡΠΈΠΊΡ & ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½ΡΡΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ», ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ && - ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠΉ &. | |
DT_CALCRECT. | ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° ΠΈ Π½Π΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°. ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ DT_SINGLELINE, ΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΈΡΠΈΠ½Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°, Π° Π΅ΡΠ»ΠΈ ΡΠ΅ΠΊΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠΎΡΠ½ΡΠΉ, ΡΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π²ΡΡΠΎΡΠ°, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½Π°Ρ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ° ΠΏΡΠΈ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΠΈΠ½Π΅. | |
ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠ°Ρ Π½Π°ΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ°Π²Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π΄ΠΊΠΎ. ΠΠ½Π° ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΡΠ½ΠΊΡΠΎΠ², Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ΅ΡΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎΠ°Π΄Π°ΠΏΡΠ΅ΡΡ ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π³ΡΠ°Π΄Π°ΡΠΈΠΉ ΡΠ΅ΡΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ½ΠΎΡ ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΡ). Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ Π»ΠΈΠ½ΠΈΠΈ Π½Π΅ ΡΠΈΡΡΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ, Π° ΡΠΌΠ΅ΡΠ°Π½Π½ΡΠΌ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Windows ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ²Π΅ΡΠ° ΡΠ΅ΠΊΡΡΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΡΡΠΉ ΡΠ²Π΅Ρ, ΡΠΎ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΡΠΌΠ΅ΡΠ°Π½Π½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ. ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ΄Π΅Ρ Π΅Π΅ ΡΠ°Π±ΠΎΡΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ:
BOOL GrayString (hDC, hBrush, lpfnDraw, lParam, cChars, nX, nY, nWidth, nHeight);
ΡΠ΅ΠΊΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π°ΡΡΠΎΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Ρ Π±Π΅Π»ΡΠΌ Π±ΠΈΡΠΌΠ°ΠΏΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ OR ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ ΠΊΠΈΡΡΡΡ, ΡΠΎΡΡΠΎΡΡΠ΅ΠΉ ΠΈΠ· ΡΠ΅ΡΠ½ΡΡ ΠΈ Π±Π΅Π»ΡΡ ΡΠΎΡΠ΅ΠΊ Π² ΡΠ°Ρ ΠΌΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ (Π€ΡΠ½ΠΊΡΠΈΡ PatBlt (), ROP ΠΊΠΎΠ΄ ΡΠ°Π²Π΅Π½ 0xFA0089 (DPo)).
ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π±ΠΈΡΠΌΠ°ΠΏ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ BitBlt () Ρ ROP-ΠΊΠΎΠ΄ΠΎΠΌ 0xB8074A (PSDPxax), ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ΅ΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
((destination ^ pattern) & source) ^ pattern.
Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΡΠ΅ ΠΏΠΈΠΊΡΠ΅Π»Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π±Π΅Π»ΡΠΌ ΠΏΠΈΠΊΡΠ΅Π»Π°ΠΌ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π±ΠΈΡΠΌΠ°ΠΏΠ°, ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΌΠΈ, Π° Π²ΡΠ΅ ΠΏΠΈΠΊΡΠ΅Π»Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ΅ΡΠ½ΡΠΌ ΠΏΠΈΠΊΡΠ΅Π»Π°ΠΌ Π±ΠΈΡΠΌΠ°ΠΏΠ°, ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Ρ ΠΊΠΈΡΡΡΡ, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ hBrush Π² Π²ΡΠ·ΠΎΠ²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ GrayString ().
ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ:
hDC — ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ;
lpfnDraw — ΡΡΠ½ΠΊΡΠΈΡ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ NULL, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ TextOut (), ΠΈΠ½Π°ΡΠ΅ ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π°Π΄ΡΠ΅Ρ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ Π²Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ (ΡΠΌ. ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ MakeProcInstance ()), ΠΈΠΌΠ΅ΡΡΠ΅ΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π²ΠΈΠ΄:
BOOL CALLBACK GrayStringProc (hDC, lpParam, cChars) {.
// drawing text.
return 1;}.
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ lParam ΠΈ cChars ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ GrayString (); hDC ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΡΠ²ΠΎΠ΄ Π½Π°Π΄ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ 0,0;
Π€ΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Π΅ΡΠ½ΡΡΡ Π½Π΅ 0, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΎΡΠΈΠ±ΠΊΡ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ GrayString ().
lParam — Π΅ΡΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ lpfnDraw ΡΠ°Π²Π΅Π½ NULL, ΡΠΎ lParam ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π°Π»ΡΠ½ΠΈΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΡΡ ΡΡΡΠΎΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΈΠ½Π°ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ GrayStringProc ();
cChars — ΡΠΈΡΠ»ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΡΡΡΠΎΠΊΠ΅;
nX ΠΈ nY — ΠΏΠΎΠ·ΠΈΡΠΈΡ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π°.
nWidth — ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠ³ΠΎ Π±ΠΈΡΠΌΠ°ΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ nHeight — ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΡΡΠΎΠΊΡ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ GrayString ():
ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ MM_TEXT.
Π°ΡΡΠΈΠ±ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΠΠ ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ Π² ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ;
Π΅ΡΠ»ΠΈ cChars ΡΠ°Π²Π½ΠΎ 0, ΡΠΎ GrayString () ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ lParam ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° asciiz ΡΡΡΠΎΠΊΡ (ΠΎΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠ°ΡΡΡ Π½ΡΠ»Π΅Π²ΡΠΌ Π±Π°ΠΉΡΠΎΠΌ) ΠΈ Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π΅Π΅ Π΄Π»ΠΈΠ½Ρ Π΅ΡΠ»ΠΈ nWidth ΠΈ nHeight ΡΠ°Π²Π½Ρ 0, ΡΠΎ GrayString () Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΌ Π²ΡΡΠΈΡΠ»ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΡ Π±ΠΈΡΠΌΠ°ΠΏΠ° Π΄Π»Ρ ΡΡΡΠΎΠΊΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ lParam ΠΈ cChars.
Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΡΡΠ΅Π½ΠΊΠΎΠ² ΡΠ΅ΡΠΎΠ³ΠΎ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ΅ΡΡΡ ΡΡΡΠΎΠΊ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π½Π°Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ (GrayString () ΠΈΠ»ΠΈ TextOut () Ρ ΡΠ΅ΡΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΡΠ΅ΠΊΡΡΠ°), Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ.
rgbGrayText= GetSysColor (COLOR_GRAYTEXT);
Π΅ΡΠ»ΠΈ rgbGrayText ΡΠ°Π²Π½ΠΎ 0 (ΡΠ΅ΡΠ½ΡΠΉ ΡΠ²Π΅Ρ), ΡΠΎ ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ GrayString (), ΠΈΠ½Π°ΡΠ΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΅ΡΡΠΉ ΡΠ²Π΅Ρ ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ TextOut ():
SetTextColor (hDC, rgbGrayText); …
Π¨ΡΠΈΡΡΡ.
ΠΠΎΡΠ»Π΅ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ΅Π΄ΡΡΠ² ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΡΠΈΡΡΠΎΠ². ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» Π±ΡΠ» Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ, Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΈΡΡΠΎΠ² Π² Windows. ΠΡΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π² Π²ΠΈΠ΄Ρ Π΅Π΅ ΡΡΠ»ΠΎΠ²Π½ΠΎΡΡΡ ΠΈ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ². Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΈΡΡΠΎΠ², Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΡΡΠ°ΠΊΡΡΡΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π² ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. (Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, italic ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΠΉ ΡΡΠΈΡΡ, Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΠΉ ΠΊΡΡΡΠΈΠ² ΠΈΠ»ΠΈ ΡΠ·ΠΊΠΈΠΉ ΡΡΠΈΡΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠΈΡ ΠΈ ΡΠΎΠ»ΡΠ΅ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ ).
ΠΡΠ΅ ΡΡΠΈΡΡΡ Π² Windows ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π½Π° Π΄Π²Π΅ Π³ΡΡΠΏΠΏΡ:
ΡΡΠΈΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠΈΡΡΡ GDI.
Π‘ΠΎ ΡΡΠΈΡΡΠ°ΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΌΡ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ ΡΡΠΈΡΡΡ ΠΈ ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΆΠ΅ΡΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ Π°ΠΏΠΏΠ°ΡΠ°ΡΡΡΡ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΡ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΠΌ Π½Π° ΡΡΠΈΡΡΠ°Ρ GDI.
ΠΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΡΠΈΡΡΠΎΠ² GDI.
ΠΠ»Ρ ΡΡΠΈΡΡΠΎΠ² GDI ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠΈΡΠΈΡΡΡΡΠΈΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΡΠΈΡΡΠ°.
ΠΏΠΎ Π½Π°ΠΊΠ»ΠΎΠ½Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²:
ΠΠ±ΡΡΠ½ΠΎ ΡΠΈΠΏΡ Slanted ΠΈ Italic ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π΅ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΠΌΠΈΠ½ Italic Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠΊΠΎΠ³ΠΎ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ°.
ΠΏΠΎ ΡΠΈΡΠΈΠ½Π΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²:
ΠΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΌΠΎΠ½ΠΎΡΠΈΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ° ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΠΈΡΠΈΠ½Ρ ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ (ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΈΡΡ ΠΏΠΈΡΡΡΠ΅ΠΉ ΠΌΠ°ΡΠΈΠ½ΠΊΠΈ). Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΡΠΎΠΏΠΎΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ° ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΡΠΈΠ½Ρ ΠΈ Π΄Π°ΠΆΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ.
ΠΠΎ ΡΠΈΡΠΈΠ½Π΅ Π»ΠΈΠ½ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°:
Π ΠΈΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π·Π°ΠΌΠ΅Π½ΡΡΡ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠΈΠ½Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΉ ΠΊ ΡΠΈΡΠΈΠ½Π΅ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ . Π’Π°ΠΊΠ°Ρ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠ°ΡΡΠ½ΠΎΡΡΡΡ ΡΡΠΈΡΡΠ°. Fixed Stroke ΡΡΠΈΡΡΡ ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΡΠ°ΡΡΠ½ΠΎΡΡΡ 1:1, Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΠ°ΡΡΠ½ΠΎΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ 4:5, ΡΡΠ΅Π΄Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΡΠ°ΡΡ — 1:2 ΠΈ Ρ. Π΄.
ΠΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²:
ΠΡΠΎΡ ΠΏΡΠΈΠ·Π½Π°ΠΊ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π·Π°ΡΠ΅ΡΠ΅ΠΊ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ — ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠΏΠ΅Π½Π΄ΠΈΠΊΡΠ»ΡΡΠ½Ρ ΡΡΡΠΈΡ Π°ΠΌ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Ρ Π½ΠΈΠΌΠΈ ΠΏΠΎΠ΄ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ³Π»Π°ΠΌΠΈ, ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ ΡΠΎΠΏΡΡΠ³Π°ΡΡΡΡ Ρ ΡΡΡΠΈΡ ΠΎΠΌ (ΡΠΎ ΡΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π±Π΅Π·), ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΠΌΡ.
ΠΏΠΎ «ΠΆΠΈΡΠ½ΠΎΡΡΠΈ» ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²:
ΠΡΠΎΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠΉ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΆΠ΅ «Π²Π΅ΡΠΎΠΌ» ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΏΡΠΈ ΡΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΡΡ ΠΎΠ± ΠΎΡΠΎΠ±ΠΎ Π»Π΅Π³ΠΊΠΈΡ , Π»Π΅Π³ΠΊΠΈΡ , Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΠΈ ΠΏΡ. ΡΡΠΈΡΡΠ°Ρ . ΠΡΠ΅Π½ΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎ ΡΡΠ΅Π΄Π½Π΅ΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΡ (ΡΠ΅ΡΠ½ΡΡ ) ΡΠΎΡΠ΅ΠΊ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π΄Π»ΠΈΠ½ΠΎΠΉ 1000 ΡΠΎΡΠ΅ΠΊ. Π’ΠΈΠΏΠΈΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ 400 (Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΈΡΡ) ΠΈ 700 ΠΈΠ»ΠΈ 800 (ΠΆΠΈΡΠ½ΡΠΉ ΡΡΠΈΡΡ) ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². Π Π°Π·ΠΌΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π²ΡΡΠΎΡΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»Π°, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΠΎΠΉ Π² ΡΠΎΡΠΊΠ°Ρ . Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π³ΠΎΠ²ΠΎΡΡΡ ΠΎ ΡΡΠΈΡΡΠ΅ Π²ΡΡΠΎΡΠΎΠΉ 12 ΡΠΎΡΠ΅ΠΊ. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡΠ΅ ΡΡΠΈΡΡΡ 8−10 ΡΠΎΡΠ΅ΠΊ, ΡΡΠΈΡΡΡ 6 ΠΈ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠΎΡΠ΅ΠΊ ΡΡΠΈΡΠ°ΡΡΡΡ ΠΌΠ΅Π»ΠΊΠΈΠΌΠΈ, 12 ΠΈ Π±ΠΎΠ»Π΅Π΅, ΠΊΡΡΠΏΠ½ΡΠΌΠΈ.
ΠΡΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΡΡΠΈΠΌΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΡΠ°Π½Π° ΡΠ²Π½ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΡΠΈΡΡΠ° (6−10 ΡΠΎΡΠ΅ΠΊ).
ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ Π΄Π»Ρ Π΄ΠΈΡΠΏΠ»Π΅Π΅Π² ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ «Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΡΠΉΠΌ». ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΠΎΠ΄ΠΈΠ½ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΡΠΉΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 1.4−1.5 ΠΎΠ±ΡΠΊΠ½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ. ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΡΠΉΠΌΠ° Π²ΠΌΠ΅ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ, ΡΡΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠΈΡΡΠ΅Ρ Π½ΠΈΠ·ΠΊΡΡ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠΊΡΠ°Π½Π°.
ΠΠΎΠ³Π΄Π° ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠΎ ΠΌΡ ΠΎΡΠΌΠ΅ΡΠ°Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ MM_TWIPS, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ΄Π½ΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ 1/20 ΡΠ°ΡΡΡ ΡΠΎΡΠΊΠΈ (1/1440 Π΄ΡΠΉΠΌΠ°). ΠΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΡΠΈΠ½ΡΠ΅ΡΠΎΠΌ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΊΡΠ°Π½ΠΎΠΌ ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΌΠ΅Π½Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΡΠΉΠΌ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ°ΠΌΠΈΠΌ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ:
// ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Ρ Π½Π΅ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ.
// ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠΌΠΈ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΎΡΡΠΌ.
SetMapMode (hDC, MM_ANISOTROPIC);
// Π² ΠΎΠ΄Π½ΠΎΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΌ Π΄ΡΠΉΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ, ΠΊΠ°ΠΊ ΠΈ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ, 1440 ΡΠΎΡΠ΅ΠΊ.
// ΠΏΠΎΡΡΠΎΠΌΡ 1440 Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π΅Π΄ΠΈΠ½ΠΈΡΠ°ΠΌ.
SetWindowExt (hDC, 1440, 1440);
// Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π΅Π΄., ΡΠΊΠΎΠ»ΡΠΊΠΎ.
// ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΌ Π΄ΡΠΉΠΌΠ΅.
SetViewportExt (hDC, GetDeviceCaps (hDC, LOGPIXELSX), GetDeviceCaps (hDC, LOGPIXELSY));
Π’Π°ΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΡ WYSIWYG ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ.
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡΠΈΡ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏ ΡΡΠΈΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . Π Windows ΡΡΠΈΡΡΡ Π΄Π΅Π»ΡΡΡΡ Π½Π° ΡΡΠΈ Π³ΡΡΠΏΠΏΡ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΈΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ:
ΠΠΎΡΡΠ½ΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΡΡΠΈΡΡΠΎΠ²:
Π Π°ΡΡΡΠΎΠ²ΡΠ΅ ΡΡΠΈΡΡΡ:
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΈΠ· ΡΠ΅Π±Ρ Π½Π°Π±ΠΎΡ Π±ΠΈΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΡΠ»ΠΈΡΠ°ΡΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΠΈ ΡΠ°ΠΌΡΠΌ Π²ΡΡΠΎΠΊΠΈΠΌ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅ΠΊΡΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π²ΡΡΡΠ½ΡΡ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠ°ΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΡΠΈΡΡΠ° (ΡΠΈΡΠ»ΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² Π±ΠΈΡΠΌΠ°ΠΏΠΎΠ²), Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ°Π·, ΠΏΡΠΈΡΠ΅ΠΌ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ΅ΡΡΠ΅ΡΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ, ΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΡ ΡΡΡΠΎΠΊ ΡΠ΅ΠΊΡΡΠ°.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΡ ΠΈ ΠΆΠΈΡΠ½ΡΡ Π½Π°ΡΠ΅ΡΡΠ°Π½ΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°.
Π¨ΡΠΈΡΡΡ ΠΌΠΎΠ³ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ ΠΎΠ±ΠΌΠ΅Π½ Π±ΠΈΡΠΎΠ²ΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ (ΠΏΠ»ΠΎΡΡΠ΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ). ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ°Π·Π½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΠ΅Π±ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΡΠ°Π²ΠΈΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°ΡΡΡΠΎΠ²ΡΡ ΡΡΠΈΡΡΠΎΠ². ΠΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΈΡΡΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ Π΄ΠΈΡΠΏΠ»Π΅Ρ, Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΏΠ΅ΡΠ°ΡΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ½ΡΠ΅ΡΠ΅, Ρ ΠΎΡΡ ΡΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠΌΠ΅ΡΡ Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ.
ΠΠ΅ΠΊΡΠΎΡΠ½ΡΠ΅ ΡΡΠΈΡΡΡ:
ΠΠΏΠΈΡΡΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΡΠΎΠΏΡΡΠ³Π°Π΅ΠΌΡΡ Π»ΠΈΠ½ΠΈΠΉ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΈΠΌΠ²ΠΎΠ»Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΈΡΠΎΠ²ΠΊΠ° Π²ΡΠ΅Ρ Π»ΠΈΠ½ΠΈΠΉ, ΡΠΎ ΡΡΠΎ ΡΠ°ΠΌΡΠ΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΈΡΡΡ.
ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π»ΡΠ±ΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΈΡΡΠ° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΡΠΎΠΊΠΎΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΡΠ΅Π΄Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ ΠΌΠΎΠ³ΡΡ «ΡΠ»ΠΈΠΏΠ°ΡΡΡΡ», Π° Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π·Π°ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΈΡ ΡΡΡΡΠΊΡΡΡΠ° — ΡΠΎ Π΅ΡΡΡ Π²ΠΈΠ΄Π½Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ½ΠΈ Π½Π°ΡΠΈΡΠΎΠ²Π°Π½Ρ (ΡΠΎΠ»ΡΠΈΠ½Π° Π²Π΅ΠΊΡΠΎΡΠΎΠ² Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°Π²Π½Π° 1 Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°).
Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΠΌΠΎΠ³ΡΡ Π½Π°ΠΊΠ»ΠΎΠ½ΡΡΡΡΡ ΠΊΠ°ΠΊ Π² Π²ΠΈΠ΄Π΅ Π²ΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ°ΠΊ ΠΈ Π²Π½ΡΡΡΠΈ ΡΡΡΠΎΠΊΠΈ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΡ ΠΈ ΠΆΠΈΡΠ½ΡΡ Π½Π°ΡΠ΅ΡΡΠ°Π½ΠΈΠΉ.
Π¨ΡΠΈΡΡΡ ΠΌΠΎΠ³ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π° Π»ΡΠ±ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΡΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ Π²ΠΈΠ΄ ΡΡΠΈΡΡΠΎΠ², ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π½Π° ΠΏΠ»ΠΎΡΡΠ΅ΡΠ°Ρ .
TrueType ΡΡΠΈΡΡΡ:
ΠΡΠΎ ΡΠ°ΠΌΡΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠΈΡΡΡ Windows. ΠΠ½ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²ΠΈΠ΄ ΠΎΡΠ΅ΡΡΠ°Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΡΠΎΡΡΠΎΡΡΠ΅Π³ΠΎ ΠΈΠ· ΠΏΡΡΠΌΡΡ ΠΈ ΠΊΡΠΈΠ²ΡΡ Π»ΠΈΠ½ΠΈΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΎΠ½ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½ΡΠΆΠ½ΡΡ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°.
ΠΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°ΡΡΡΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ°Π· Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠ°. Π‘ΠΊΠΎΡΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΡΠ°ΡΡΡΠΎΠ²ΡΡ ΡΡΠΈΡΡΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΡΡΠΈΡΡΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΡ ΠΎΠ΄ΠΈΡ Π½Π° ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π½Π΅Π²ΡΡΠΎΠΊΠΎΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ Π±ΠΈΡΠΌΠ°ΠΏΠΎΠ² ΠΌΠ°Π»ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°. ΠΡΠΈ ΡΡΠΎΠΌ TrueType ΡΡΠΈΡΡ ΡΠ°ΡΡΠΎ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΡΡΡΠΎΠ²ΡΠΉ ΡΡΠΈΡΡ ΠΌΠ°Π»ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° (Small Fonts). ΠΠΎ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΡΠΎ ΡΠ°ΠΌΡΠ΅ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΡΠΈΡΡΡ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π»Π΅Π³ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠΈΡΡΠ° Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π΄Π΅Π»Π°Π΅Ρ TrueType ΡΡΠΈΡΡ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΌ Π² WYSIWYG ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.
TrueType ΡΡΠΈΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΠΊΡΡΠ°.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ TrueType ΡΡΠΈΡΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΆΠΈΡΠ½ΡΠ΅ ΠΈ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΡΠ΅ Π½Π°ΡΠ΅ΡΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ TrueType ΡΡΠΈΡΡ Π·Π°ΡΠ°ΡΡΡΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ΅ΡΡΡΠ΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ : Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌ, Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠΌ, ΠΆΠΈΡΠ½ΠΎΠΌ ΠΈ Π½Π°ΠΊΠ»ΠΎΠ½Π½ΠΎΠΌ-ΠΆΠΈΡΠ½ΠΎΠΌ. ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ ΠΎΠ±ΠΌΠ΅Π½ Π±ΠΈΡΠΎΠ²ΡΠΌΠΈ ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ.
TrueType ΡΡΠΈΡΡΡ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΡΠΈΡΡΠΎΠ² Π΅ΡΠ΅ ΠΈ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ΄Π΅Π»ΡΡΡ ΠΏΠ°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (kerning pairs) ΠΈ Π΄Π»Ρ Π½ΠΈΡ Π·Π°Π΄Π°ΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ (ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅), Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°. ΠΠ°Π΄Π°Π½ΠΈΠ΅ «ΠΊΠ΅ΡΠ½ΠΈΠ½Π³Π°» ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΡΡΠΈΡΡΠ°.
ΠΡΡΠ³ΠΎΠΉ Π²Π°ΠΆΠ½Π΅ΠΉΡΠΈΠΉ ΠΏΡΠΈΠ·Π½Π°ΠΊ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΠΈΡΡΠΎΠ² ΡΠ²ΡΠ·Π°Π½ Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Windows Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡΠ·ΡΡΠ½ΡΡ ΡΡΠ΅Π΄. Π‘ΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ½ΠΎΡΠΈΡΡΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ΅ΡΡΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π³ΡΡΠΏΠΏ ΡΡΠΈΡΡΠΎΠ².
ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΠΎΠ΄ ANSI ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΡΠ° ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΡΡΠ° Π² Π΄Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Windows. Π‘ΡΡΠΎΠ³ΠΎ Π³ΠΎΠ²ΠΎΡΡ, ANSI ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΈΡΡ Π² Π°Π½Π³Π»ΠΎΡΠ·ΡΡΠ½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Windows. Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ΅ ΡΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π·Π°ΠΌΠ΅Π½ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ANSI Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΡΡΡΠΊΠΈΠ΅ Π±ΡΠΊΠ²Ρ. ΠΡΠΈ ΡΡΠΎΠΌ, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Windows, ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΡΡΠΈΡΠ°ΡΡΡΡ ANSI. Π ΡΡΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Windows ΡΡΡΡΠΊΠΈΠ΅ Π±ΡΠΊΠ²Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ΅ΡΡΠ° Ρ 192 ΠΏΠΎ 255 Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΠΏΠΎΠ΄ OEM ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°, ΠΏΡΠΈΠ½ΡΡΠ°Ρ Π² DOS. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ 437 ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π΄Π»Ρ ΡΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ DOS ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½Π°Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° ΠΠΠ‘Π’, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° 866 ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° (Π²Ρ ΠΎΠ΄ΠΈΠ»Π° Π² ΡΠΎΡΡΠ°Π² MS DOS 4.0 ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΠΎΠΌ Π½Π° ΡΠ΅ΡΡΠΈΡΠΎΡΠΈΠΈ Π‘Π‘Π‘Π ).
ΠΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° SYMBOL Π² Windows ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠΈΡΡ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΡΠ°Π·Π½ΡΡ Π½Π΅-Π°Π»ΡΠ°Π²ΠΈΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΡΠ΅Π»ΠΎΠΊ, ΠΏΠΈΠΊΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΊ ΠΈ ΠΏΡ. ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° SHIFTJIS ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠ΅Π½Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΡΠ°ΡΡΡΠΈΡΠ°Π½Π½ΠΎΠ΅ Π½Π° ΡΠΏΠΎΠ½ΡΠΊΡΡ Π°Π·Π±ΡΠΊΡ KANJI. Π ΡΡΠΎΠΉ Π°Π·Π±ΡΠΊΠ΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈΠ· Π΄Π²ΡΡ Π±Π°ΠΉΡ.