Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«C# для профСссионалов. Π’ΠΎΠΌ IIΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 70

Автор Π‘ΠΈΠΌΠΎΠ½ Робинсон

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим Π½Π° Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΠΉ снимок экрана β€” сразу послС ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ изобраТСния Π²Π½ΠΈΠ·. ΠœΡ‹ Π·Π°ΠΌΠ΅Ρ‡Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ здСсь Π²Π΅Ρ€Ρ…Π½ΠΈΠ΅ Π΄Π²Π΅ Ρ‚Ρ€Π΅Ρ‚ΠΈ ΠΎΠΊΠ½Π° выглядят Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ нарисованы, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡƒΡΠΊΠ°Π»ΠΎΡΡŒ Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π·. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ΅ ΠΎΠΊΠ½Π° Windows Π½Π΅ просит ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ Π½Π° экранС. БистСма Windows достаточно Ρ€Π°Π·ΡƒΠΌΠ½Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΠΈΡ‚Ρ‹ ΠΈΠ· ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π° экранС ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ полоТСнию ΠΏΠ°Π½Π΅Π»ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ эффСктивный процСсс, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ срСдства ускорСния. Π§Π°ΡΡ‚ΡŒ этого изобраТСния экрана, которая выглядит Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, составляСт ниТнюю Ρ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΠΊΠ½Π°. Π­Ρ‚Π° Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠΊΠ½Π° Π½Π΅ Π±Ρ‹Π»Π° нарисована, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ появилось Π½Π° экранС Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ ΠΎΠ½Π° Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π²Π½Π΅ клиСнтской области. Π—Π½Π°Ρ‡ΠΈΡ‚, систСма Windows просит ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ScrollShapes Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ эту ΠΎΠ±Π»Π°ΡΡ‚ΡŒ. Она ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ событиС Paint, пСрСдавая ΠΈΠΌΠ΅Π½Π½ΠΎ эту ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π² качСствС ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° вырСзания. И ΠΈΠΌΠ΅Π½Π½ΠΎ это сдСлал ΠΌΠ΅Ρ‚ΠΎΠ΄ OnPaint(). Π’Π°ΠΊΠΎΠ΅ довольно странноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ экрана Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сдСлало Π² точности Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠΊΠ°Π·Π°Π½ΠΎ.

Один ΠΈΠ· способов Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ состоит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ. ΠœΡ‹ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°Π΄Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° Π½Π°Ρ‡Π°Π»Π° "Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°", Π° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° клиСнтской области. Рисунок Π΄ΠΎΠ»ΠΆΠ΅Π½ это Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ. На Π½Π΅ΠΌ Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ области экрана ΠΈ всСго Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ рисунок понятнСС, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π° самом Π΄Π΅Π»Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π²Π½ΠΈΠ· ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ экрана, Π½ΠΎ это Π½Π΅ измСняСт рассуТдСния. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ). ВолстыС Π»ΠΈΠ½ΠΈΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ ΠΈ эллипс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ пытаСмся Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ. НСкоторая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ нарисованная Ρ‚ΠΎΡ‡ΠΊΠ° Π  Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Π² качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. ΠŸΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² рисования ΠΌΡ‹ прСдоставляСм экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Graphics с Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ· Ρ‚ΠΎΡ‡ΠΊΠΈ Π’ Π² Ρ‚ΠΎΡ‡ΠΊΡƒ Π , этот Π²Π΅ΠΊΡ‚ΠΎΡ€ прСдставляСт экзСмпляр Point. На самом Π΄Π΅Π»Π΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈΠ· Ρ‚ΠΎΡ‡ΠΊΠΈ А Π² Ρ‚ΠΎΡ‡ΠΊΡƒ Π .

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ нСизвСстно, ΠΊΠ°ΠΊΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈΠ· А Π² Π . ΠœΡ‹ Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈΠ· Π’ Π² Π , это просто ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π  ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, позиция, Π³Π΄Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΡƒ Π . ΠœΡ‹ Π·Π½Π°Π΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΈΠ· Π’ Π² А β€” это Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ°; ΠΎΠ½Π° хранится Π² свойствС класса Form с ΠΈΠΌΠ΅Π½Π΅ΠΌ AutoScrollPosition. Однако ΠΌΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ Π²Π΅ΠΊΡ‚ΠΎΡ€, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ· А Π² Π . Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ искомый Π²Π΅ΠΊΡ‚ΠΎΡ€, Π½Π°Π΄ΠΎ Π²Ρ‹Ρ‡Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ ΠΈΠ· Π’ Π² Π  Π½Π°Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π½Π° 150 пиксСлСй Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ Π½Π° 200 пиксСлСй Π²Π½ΠΈΠ·, Π° Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ ΠΈΠ· B Π² А, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π½Π° 10 пиксСлСй Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ Π½Π° 57 пиксСлСй Π²Π½ΠΈΠ·. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ для Ρ‚ΠΎΡŽ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ ΠΈΠ· А Π² Π . Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒΡΡ Π½Π° 140 (= 150 - 10) пиксСлСй Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ Π½Π° 143 (= 200 - 57) пиксСля Π²Π½ΠΈΠ·:

Однако всС выполняСтся ΠΏΡ€ΠΎΡ‰Π΅. Π’Π΅ΡΡŒ процСсс Π±Ρ‹Π» расписан ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит Π½Π° самом Π΄Π΅Π»Π΅, Π½ΠΎ класс Graphics Π½Π° самом Π΄Π΅Π»Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΠΉ эти вычислСния. Он называСтся TranslateTransform. Π•ΠΌΡƒ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Π³Π΄Π΅ находится Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π»Π΅Π²Ρ‹ΠΉ ΡƒΠ³ΠΎΠ» клиСнтской области ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (нашС свойство AutoScrollPosition, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт Π½Π° рисункС Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΎΡ‚ Π’ ΠΊ А). Π—Π°Ρ‚Π΅ΠΌ устройство Graphics с этого ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, принимая Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π³Π΄Π΅ находится клиСнтская ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

ПослС всСх этих объяснСний ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку ΠΊΠΎΠ΄Π° Π² ΠΊΠΎΠ΄ рисования

dc.TranslateTransform(this.AutoScrollPosition.X, this.AutoScrollPosition.Y);

ЀактичСски Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это происходит Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ вырСзания, провСряя, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ рисованиС. ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ полоТСния ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ, послС Ρ‡Π΅Π³ΠΎ вСсь ΠΊΠΎΠ΄ рисования для этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° (Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΉ с web-сайта Wrox Press ΠΊΠ°ΠΊ ScrollShapes) выглядит Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

protected override void OnPaint(PaintEventArgs e) {

 Graphics dc = e.Graphics;

 Size ScrollOffset = new Size(this.AutoScrollPosition);

 if (e.ClipRectangle.Top + ScrollOffset.Width < 350 || e.ClipRectangle.Left + ScrollOffset.Height < 250) {

  Rectangle RectangleArea =

   new Rectangle(RectangleTopLeft + ScrollOffset, RectangleSize);

  Rectangle EllipseArea =

   new Rectangle(EllipseTopLeft + ScrollOffset, EllipseSize);

  dc.DrawRectangle(BluePen, RectangleArea);

  dc.DrawEllipse(RedPen, EllipseArea);

 }

 base.OnPaint();

}

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ прСкрасно, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ снимок экрана.

ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΌΠΈΡ€ΠΎΠ²Ρ‹Π΅, страницы ΠΈ устройства

Π Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ Π² измСрСниях ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° экрана являСтся Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ GDI+ ΠΈΠΌΠ΅Π΅Ρ‚ для Π½ΠΈΡ… ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ названия.

β–‘ ΠœΠΈΡ€ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠΉ Π² пиксСлях ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. НазваниС ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ вСсь Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ "ΠΌΠΈΡ€" с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

β–‘ ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ страницы ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠΉ Π² пиксСлях ΠΎΡ‚ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡƒΠ³Π»Π° клиСнтской области. НазваниС ΠΈΠ΄Π΅Ρ‚ ΠΎΡ‚ прСдставлСния Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ области ΠΊΠ°ΠΊ "страницы" Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, Π·Π½Π°ΠΊΠΎΠΌΡ‹Π΅ с GDI, замСтят, Ρ‡Ρ‚ΠΎ ΠΌΠΈΡ€ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ логичСским ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ GDI. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ страницы ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ устройства GDI. Π­Ρ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ способ кодирования прСобразования ΠΌΠ΅ΠΆΠ΄Ρƒ логичСскими ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ устройства Π² GDI+ измСнился. Π’ GDI ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ»ΠΎΡΡŒ Ρ‡Π΅Ρ€Π΅Π· контСкст устройства с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ API Windows LPtoDP() ΠΈ DPtoLP(). Π’ GDI+ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для выполнСния прСобразования, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Form.

GDI+ опрСдСляСт Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ устройства. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ устройства Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ страницы, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π² качСствС Π΅Π΄ΠΈΠ½ΠΈΡ† измСрСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½Π΅ пиксСли, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства Graphics.PageUnit. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ измСрСния, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ пиксСлСй, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π΄ΡŽΠΉΠΌΡ‹ ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΌΠ΅Ρ‚Ρ€Ρ‹. Π₯отя свойство PageUnit Π² этой Π³Π»Π°Π²Π΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΊΠ°ΠΊ способ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ плотности пиксСлСй Π½Π° устройствах. НапримСр, 100 пиксСлСй Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠ² Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΠΊΠΎΠ»ΠΎ дюйма. Однако Π»Π°Π·Π΅Ρ€Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄ΠΎ тысяч dpi (Ρ‚ΠΎΡ‡Π΅ΠΊ Π½Π° дюйм), Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ„ΠΈΠ³ΡƒΡ€Π° Π² 100 пиксСлСй ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС ΠΏΡ€ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π½Π° Ρ‚Π°ΠΊΠΎΠΌ Π»Π°Π·Π΅Ρ€Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Π΅. Задавая Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ измСрСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΡŽΠΉΠΌΡ‹, ΠΈ опрСдСляя, Ρ‡Ρ‚ΠΎ Ρ„ΠΈΠ³ΡƒΡ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ Π² 1 дюйм, ΠΌΠΎΠΆΠ½ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ„ΠΈΠ³ΡƒΡ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройствах.

Π¦Π²Π΅Ρ‚Π°

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ рассмотрим способы, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ для рисования.

Π¦Π²Π΅Ρ‚Π° Π² GDI+ прСдставлСны экзСмплярами структуры System.Drawing.Color. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ послС создания экзСмпляра Ρ‚Π°ΠΊΠΎΠΉ структуры с Π½ΠΈΠΌ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ нСльзя Π΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ Color. ΠœΡ‹ встрСчали эту структуру Ρ€Π°Π½ΡŒΡˆΠ΅, ΠΊΠΎΠ³Π΄Π° Π·Π°Π΄Π°Π²Π°Π»ΠΈ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ клиСнтской области ΠΎΠΊΠ½Π° Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…. Бвойство Form.BackColor Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ экзСмпляр Color. Рассмотрим эту структуру Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ. Π’ частности, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… способов создания Color.

ЗначСния красный-Π·Π΅Π»Π΅Π½Ρ‹ΠΉ-синий (RGB)

ΠžΠ±Ρ‰Π΅Π΅ число Ρ†Π²Π΅Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π΅, ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎ β€” Π±ΠΎΠ»Π΅Π΅ 16 ΠΌΠ»Π½. Π’ΠΎΡ‡Π½Π΅Π΅, ΠΎΠ½ΠΎ Ρ€Π°Π²Π½ΠΎ 2 Π² 24-ΠΉ стСпСни, Ρ‡Ρ‚ΠΎ составляСт 16777216. ВрСбуСтся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ способ индСксирования этих Ρ†Π²Π΅Ρ‚ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ Ρ†Π²Π΅Ρ‚ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ пиксСля.

НаиболСС распространСнный способ индСксирования Ρ†Π²Π΅Ρ‚ΠΎΠ² состоит Π² Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΈΡ… Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ красного, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ синСго Ρ†Π²Π΅Ρ‚ΠΎΠ². Π­Ρ‚Π° идСя основываСтся Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Ρ‡Ρ‚ΠΎ любой Ρ†Π²Π΅Ρ‚, Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅ΠΌΡ‹ΠΉ чСловСчСским Π³Π»Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ количСства красного, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ синСго. Π­Ρ‚ΠΈ Ρ†Π²Π΅Ρ‚Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ оказываСтся, Ρ‡Ρ‚ΠΎ Ссли Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π½Π° 256 Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… интСнсивностСй, Ρ‚ΠΎ это Π΄Π°Π΅Ρ‚ достаточно Ρ‚ΠΎΠ½ΠΊΡƒΡŽ Π³Ρ€Π°Π΄Π°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ вывСсти изобраТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ чСловСчСским Π³Π»Π°Π·ΠΎΠΌ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ фотографичСскоС качСство. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ опрСдСляСм Ρ†Π²Π΅Ρ‚Π°, задавая значСния этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π½Π° шкалС ΠΎΡ‚ 0 Π΄ΠΎ 255, Π³Π΄Π΅ 0 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ отсутствуСт, Π° 255 ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ‚Π΅Π½ΡΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.