ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы.


Вид поздравления с Днем Рождения мужчине стишки.

 

Часть 13

                                11-1
     Глава 11. Графика
     11.1. Введение
     Язык PCL  представляет  несколько графических функциональных
 воз-
можностей. Существует возможность строить растровые образы в точк
ах на
бит и заполнять или затенять прямоугольные области с зараннее  оп
реде-
ленными формами.
     11.2. Растровая графика
     Образы, составленные из групп точек,  являются растровыми об
раза-
ми. Изображения в газете или телевизионные картинки являются прим
ерами
растровых  образов. Язык PCL включает команды для печати растровы
х об-
разов. Образ подразделяется на ряды точек; ряд описывает  одну  п
олосу
точек образа. Точечный ряд данных растрового образа передается пр
инте-
ру как  последовательность  байтов, содержащих побитовое представ
ление
ряда. Если бит в ряде устанавливается в 1, соответствующая точка 
будет
печататься. Обнуленные биты должны быть добавлены в конец каждого
 ряда
для создания этого ряда, чтобы они содержали  интегральное число 
байт.
Ряды из точек формируются с верхней границы символа до нижней гра
ницы,
то есть, первый ряд точек данных, переданных в  принтер, соответс
твует
верхнему ряду точек образа.
     Рисунок 11-1 является примером растрового образа в форме стр
елки.
     
     11.2.1. Разрешающая способность растровой графики
     Растровая графика может быть напечатана при плотности  300, 
 150,
100 или  75 точек на дюйм.  Эта команда определяет разрешающую сп
особ-
ность передач последовательных растровых данных.
           Ec*t#R
          # = 75 - 75 точек на дюйм
              100 - 100 точек на дюйм
              150 - 150 точек на дюйм
              300 - 300 точек на дюйм
     Эта команда  должна  быть установлена до запуска команды гра
фики.
Разрешающая способность,  установленная по умолчанию на заводе-из
гото-
вителе принтеров, составляет 75 точек на дюйм.
     Разрешающая способность принтера LaserJet  series  II  равна
  300
точкам на  дюйм.  Принтер LaserJet series II во время печати авто
мати-
чески увеличивает разрешающую способность растровой графики,  пер
едан-
ной при разрешающей способности меньшей, чем 300 точек на дюйм, д
о 300
точек на дюйм.
                                11-2 
 Dot Row (1)		Binary Representation  (2)
                 Byte 1   Byte 2   Byte 3   Byte 4 
     1		00000000 00000000 10000000 00000000
     2		00000000 00000000 11000000 00000000 
     3		00000000 00000000 11100000 00000000
     4		00000000 00000000 11110000 00000000
     5		00000000 00000000 11111000 00000000
     6		00000000 00000000 11111100 00000000
     7		00000000 00000000 11111110 00000000
     8		00000000 00000000 11111111 00000000
     9		00000000 00000000 11111111 10000000
    10		11111111 11111111 11111111 11000000
    11		11111111 11111111 11111111 11100000
    12		11111111 11111111 11111111 11110000
    13		11111111 11111111 11111111 11111000
    14		11111111 11111111 11111111 11111100
    15		11111111 11111111 11111111 11111110
    16		11111111 11111111 11111111 11111111
    17		11111111 11111111 11111111 11111111
    18		11111111 11111111 11111111 11111110
    19		11111111 11111111 11111111 11111100
    20		11111111 11111111 11111111 11111000
    21		11111111 11111111 11111111 11110000
    22		11111111 11111111 11111111 11100000
    23		11111111 11111111 11111111 11000000
    24		00000000 00000000 11111111 10000000
    25		00000000 00000000 11111111 00000000
    26		00000000 00000000 11111110 00000000
    27		00000000 00000000 11111100 00000000
    28		00000000 00000000 11111000 00000000
    29		00000000 00000000 11110000 00000000
    30		00000000 00000000 11100000 00000000
    31		00000000 00000000 11000000 00000000
    32	   	00000000 00000000 10000000 00000000
     Рис.11-1. Растровый образ в форме стрелки:
               1 - ряд точек; 2 - двоичное представление.
     Следующий рисунок показывает единственный бит,  оттранслиров
анный
в соответствующие напечатанные точки, в каждом из четырех разреше
ний:
     ЪДДДї       ЪДДДВДДДї      ЪДДДВДДДВДДДї    ЪДДДВДДДВДДДВДДД
ї 
     і x і       і x і   і      і x і   і   і    і x і   і   і   
і 
     АДДДЩ       ГДДДЕДДДґ      ГДДДЕДДДЕДДДґ    ГДДДЕДДДЕДДДЕДДД
                 і   і   і      і   і   і   і    і   і   і   і   
                 АДДДБДДДЩ      ГДДДЕДДДЕДДДґ    ГДДДЕДДДЕДДДЕДДД
                                і   і   і   і    і   і   і   і   
                                АДДДБДДДБДДДЩ    ГДДДЕДДДЕДДДЕДДД
                                                 і   і   і   і   
       						 АДДДБДДДБДДДБДДДЩ
    300 dpi       150 dpi          100 dpi            75 dpi
  
     X = относительная точка отсчета
                                11-3
  
     Более низкая разрешающая способность охватывает меньшее коли
чест-
во пользовательской памяти. Например, число бит, которое требуетс
я для
представления образа размером 2 на 3 дюйма при разрешающей способ
ности
75 точек на дюйм, равно 34,200. Такой же образ при разрешающей сп
особ-
ности 300 точек на дюйм требует 540,000 бит.
     11.2.2. Запуск растровой графики
     Команда "Запуск растровой графики" определяет левую границу 
раст-
ровой графики.
           Ec*r#A
          # = 0 или 1
     Значение 0 определяет, что левая граница по горизонтали равн
а ну-
левому значению. Значение 1 определяет, что левая граница распола
гает-
ся в текущем положениии по оси X.
     Как только команда запуска растровой графики принимается  пр
инте-
ром, разрешающая способность растровой графики и левая граница ра
стро-
вой графики фиксируется до тех пор,  пока не получена команда зав
ерше-
ния растровой графики.
     11.2.3. Пересылка растровых данных
     Команда "Пересылка растровых данных" используется  для  пере
сылки
ряда растровых данных в принтер.
           Ec*b#W [растровые данные]
     Поле значения  (#)  определяет число байтов в растровом ряду
. Эти
байты интерпретируются как один ряд данных растровой графики,  ко
торые
будут печататься с текущей  координаты   оси Y с левой границы ра
стро-
вой графики. После завершения этой команды, текущим активным поло
жени-
ем является начало следующего растрового ряда на левой границе ра
стро-
вой  графики. Внутри растровых данных, каждый бит описывает единс
твен-
ную точку. Старший значащий бит (бит 7 является старшим значащим,
  бит
0 является младшим значащим) первого байта данных соответствует п
ервой
точке в пределах этого ряда. Если бит принимает значение 1, соотв
етст-
вующая точка будет напечатана. Каждая точка расширяется в соответ
ствии
с определенной растровой разрешающей способностью.
     Растровая графика не зависит от текстовой области и режима п
рого-
на перфорации, то есть эти ограничения игнорируются.
     Образы растровой графики ограничиваются  областью  доступной
  для
печати; образы, которые превышают область доступную для печати от
сека-
ются.
     На  принтере LaserJet series II ряды растровой графики печат
аются
вдоль ширины физической страницы, независимо от ориентации  логич
еской
страницы. При продольной ориентации растровый ряд печатается в по
ложи-
тельном направлении по оси X PCL системы координат, и последующий
 рас-
тровый ряд будет печататься начиная со следующего положения ряда 
точек
положительного    направления    оси  Y.    При поперечной  ориен
тации
растровый  ряд   печатается  в  положительном  направлении  оси Y
  PCL
системы координат, и последующий растровый ряд будет печататься, 
начи-
ная со следующего положения ряда точек отрицательного направления
  оси
X.   Рисунок  11-2  показывает  воспроизведение  растровой  графи
ки  в
LaserJet series II:
                                11-4
		     X ДДДДДДц
                   ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
                Y  і                               і
       		   і	(X ,Y )     Raster Row (1) і
	        і  і	  1  1	                   і
                і  і                     ДДДДДДДц  і
       		ш  і   	                           і
    	    	   і   Я  .  .  .   . x .    .     і
                   і   .              xxx    .     і
                   і   xxxxxxxxxxxxxxxxxxxx  .     і       
                   і   xxxxxxxxxxxxxxxxxxxxxx      і
                   і   xxxxxxxxxxxxxxxxxxxx  .     і
                   і   .              xxx    .     і
                   і   .  .  .  .  .  x .    .     і
                   і                               і
                   і                               і
                   АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
  			        PORTRAIT
				  (2)
		     X ДДДДДДДц
		   ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї
		   і                 	        	   і
               Y   і	(X ,Y )			           і
               і   і	  1  1			           і
               і   і				           і
               і   і**********.  .  Ь  		           і
               ш   і**********      .	і	           і
 		   і**********      .	і  R    	   і	
		   і**********      .	і  a	    	   і	
		   і**********      .	і  s    	   і
		   і**********	    .	і  t    	   і
		   і**********      .	і  e	    	   і
		   і****************	і  r	    	   і
		   і*************   .	і	           і
		   і**********      .	і  R    	   і	
		   і********        .	і  o	     	   і
		   і******          .	і  w	           і
		   і ***            .	ш	           і
		   і. * .   .   .   .		           і
		   і 				           і
		   АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
				LANDSCAPE (3)
				
     (X1,Y1) = текущее активное положение до передачи растровых д
анных
     Рис.11-2. Воспроизведение растровой графики:
               1 - растровый ряд; 2 - продольная ориентация; 3 - 
попе-
               речная ориентация.
                                11-5
  
     11.2.4. Завершение растровой графики
     Команда  "Завершение растровой графики" означает завершение 
пере-
дачи графического растрового изображения.
           Ec*rB
     11.2.5. Пример растровой графики
     Чтобы передать графическое растровое изображение в форме стр
елки, 
необходимо выполнить следующие шаги:
     1. Позиционировать курсор:
           Ec*p300x400Y       Этот шаг перемещает  курсор  в  пол
ожение
                             точки  (300,400)  в  пределах PCL си
стемы
                             координат.
     2. Определить разрешающую способность растровой графики:
           Ec*t75R            Этот шаг устанавливает  разрешающую
  спо-
                             собность растровой графики к значени
ю  75
                             точек на дюйм.
     3. Определить левую границу растровой графики:
           cE*r1A             Этот шаг устанавливает левую границ
у гра-
                             фики к текущему положению по оси X (
300).
     4. Передать растровые данные в принтер:
     Разбейте   образ на точечные ряды и передайте каждый точечны
й ряд
в принтер как последовательность байтов, как показано на рисунке 
11-3.
     5. Определить завершение передачи растрового образа:
           Ec*rB
     Этот  пример позволяет напечатать стрелку, показанную  на ри
сунке
11-4.
     
     11.3. Заполнение прямоугольной области
     Язык PCL включает команды для заполнения  или  затенения  пр
ямоу-
гольных  областей  с предопределенными формами. Прямоугольные обл
асти
печатаются в ориентации логической страницы. Ширина области расши
ряет-
ся  в положительном направлении по оси X PCL системы координат; в
ысота
области расширяется в положительном направлении по оси Y.
     Примечание: На прямоугольные области не воздействует команда
 раз-
                 решающей способности растровой графики.
     11.3.1. Горизонтальный размер прямоугольника (в деципунктах)
     Эта команда "Горизонтальный размер прямоугольника" определяе
т ши-
рину прямоугольника в десятичных долях пункта.
           Ec*c#H
     # = Число десятых долей пункта (1/720 дюйма)
     Поле значения (#) занимает 4 десятичных разряда.
     Принтер  преобразовывает определенную ширину в точки путем о
круг-
ления в большую сторону числа точек. Например, 5 деципунктов,  ко
торые
соответствуют 2.08 точкам в LaserJet series II, преобразуются в 3
 точ-
ки.
                                11-6
  
     Горизонтальный размер прямоугольника, установленный по  умол
чанию
на заводе-изготовителе принтеров, равен 0.
  Dot (1)          (2)                                        (3)
  Row    byte 1   byte 2   byte 3   byte 4          Decimal Equiv
alent *
   1	00000000 00000000 10000000 00000000     Ec*b4W[  0,  0,128, 
 0]
   2	00000000 00000000 11000000 00000000     Ec*b4W[  0,  0,192, 
 0]
   3	00000000 00000000 11100000 00000000     Ec*b4W[  0,  0,224, 
 0]
   4	00000000 00000000 11110000 00000000     Ec*b4W[  0,  0,240, 
 0]
   5	00000000 00000000 11111000 00000000     Ec*b4W[  0,  0,248, 
 0]
   6	00000000 00000000 11111100 00000000     Ec*b4W[  0,  0,252, 
 0]
   7	00000000 00000000 11111110 00000000     Ec*b4W[  0,  0,254, 
 0]
   8	00000000 00000000 11111111 00000000     Ec*b4W[  0,  0,255, 
 0]
   9	00000000 00000000 11111111 10000000     Ec*b4W[  0,  0,255,1
28]
  10	11111111 11111111 11111111 11000000     Ec*b4W[255,255,255,1
92]
  11	11111111 11111111 11111111 11100000     Ec*b4W[255,255,255,2
24]
  12	11111111 11111111 11111111 11110000     Ec*b4W[255,255,255,2
40]
  13	11111111 11111111 11111111 11111000     Ec*b4W[255,255,255,2
48]
  14	11111111 11111111 11111111 11111100     Ec*b4W[255,255,255,2
52]
  15	11111111 11111111 11111111 11111110     Ec*b4W[255,255,255,2
54]
  16	11111111 11111111 11111111 11111111     Ec*b4W[255,255,255,2
55]
  17	11111111 11111111 11111111 11111111     Ec*b4W[255,255,255,2
55]
  18	11111111 11111111 11111111 11111110     Ec*b4W[255,255,255,2
54]
  19	11111111 11111111 11111111 11111100     Ec*b4W[255,255,255,2
52]
  20	11111111 11111111 11111111 11111000     Ec*b4W[255,255,255,2
48]
  21	11111111 11111111 11111111 11110000     Ec*b4W[255,255,255,2
40]
  22	11111111 11111111 11111111 11100000     Ec*b4W[255,255,255,2
24]
  23	11111111 11111111 11111111 11000000     Ec*b4W[255,255,255,1
92]
  24	00000000 00000000 11111111 10000000     Ec*b4W[  0,  0,255,1
28]
  25	00000000 00000000 11111111 00000000     Ec*b4W[  0,  0,255, 
 0]
  26	00000000 00000000 11111110 00000000     Ec*b4W[  0,  0,254, 
 0]
  27	00000000 00000000 11111100 00000000     Ec*b4W[  0,  0,252, 
 0]
  28	00000000 00000000 11111000 00000000     Ec*b4W[  0,  0,248, 
 0]
  29	00000000 00000000 11110000 00000000     Ec*b4W[  0,  0,240, 
 0]
  30	00000000 00000000 11100000 00000000     Ec*b4W[  0,  0,224, 
 0]
  31	00000000 00000000 11000000 00000000     Ec*b4W[  0,  0,192, 
 0]
  32	00000000 00000000 10000000 00000000     Ec*b4W[  0,  0,128, 
 0]
      АДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДЩ    АДДДДДДДДДДВДДДД
ДДДДЩ
			 				    
       		Raster Image (4)                Raster Data Commands (5)
     
     * Скобки и команды не являются частью команды  растровых  да
нных;
они используются только для описания данных.
     Рис.11-3. Пример данных образа растровой графики:
               1  - точечный ряд; 2 - байт; 3 - десятичный эквива
лент;
               4 - растровый образ; 5 - команды растровых данных.
     
     11.3.2. Горизонтальный размер прямоугольника (в точках)
     Команда  "Горизонтальный размер прямоугольника" определяет ш
ирину
прямоугольника в точках.
          Ec*c#A
     # = Число точек
     Горизонтальный размер прямоугольника, установленный по  умол
чанию
на заводе-изготовителе принтеров, равен 0.
                                11-7
  
     11.3.3. Вертикальный  размер  прямоугольника (в деципунктах)
     Команда "Вертикальный  размер  прямоугольника" определяет вы
соту
прямоугольника в десятичных долях пункта.
           Ec*c#V
     # = Число десятых долей пункта (1/720 дюйма)
     Поле значения (#) содержит до 4 десятичных разрядов.
  (300,400)ДДї 
	  .  і  .  .  .  .  .  .  .  .  .  .  . 
	  .  ш				      .
          .  Я           *      	      .
	  .        	 **	              .
          .              ****                 .
	  .  ******************               .
	  .  *********************            .
	  .  ************************         .
	  .  *********************            .
	  .  ******************               . 
	  .        	 ****		      .	
	  .    		 **                   . 
	  .		 *		      .
          .  .  .  .  .  .  .  .  .  .  .  .  .  
     Рис.11-4. Пример передачи образа растровой графики
     Принтер преобразует определенную ширину к точкам путем округ
ления
в большую  сторону до целого числа точек. Например, 5 деципунктов
, ко-
торые соответствуют 2,08 точкам в принтере LaserJet series II,  п
реоб-
разуются в 3 точки.
     Вертикальный размер прямоугольника, установленный по умолчан
ию на
заводе-изготовителе принтеров, равен 0.
     11.3.4. Вертикальный размер прямоугольника (в точках)
      Команда "Вертикальный размер прямоугольника"  определяет  в
ысоту
прямоугольника в точках.
           Ec*c#B
     # = Число точек
     Вертикальный размер прямоугольника, установленный по умолчан
ию на
заводе-изготовителе принтеров, равен 0.
     11.3.5. Идентификация заполнения области
     Эта  команда  определяет уровень затенения или тип шаблонног
о за-
полнения, который используется при заполнении прямоугольной облас
ти.
           Ec*c#G
     Поле значения (#) определяет уровень затенения или тип шабло
нного
заполнения.  Существует  восемь уровней затенения, определенных я
зыком
PCL. Для определения уровня затенения используют любое значение  
между
1  и  100.  
     Существует шесть способов заполнения,  определенных  языком 
 PCL.
Для определения типа образа заполнения используют любое значение 
между
1 и 6.
     11.3.6. Заполненная прямоугольная область
     Эта команда используется для заполнения прямоугольной област
и оп-
ределенной ширины и высоты.
           Ec*c#P
     # = 0 - Сплошное заполнение
       = 2 - Затененное заполнение
       = 3 - Шаблонное заполнение
                                11-8
  
     Уровень  затенения или тип шаблонного заполнения, которые ис
поль-
зуются при заполнении прямоугольника, определяется текущей иденти
фика-
цией заполнения области. Прямоугольная область со сплошным заполн
ением
также известна как "шпон" и не требует определения  идентификации
  за-
полнения области.
     Верхний  левый угол прямоугольной области располагается в те
кущем
активном положении. Текущее активное положение не изменяется во  
время
печатания прямоугольной области.
     Прямоугольные  области не зависят от области текста и режима
 про-
гона перфорации, то есть эти ограничения игнорируются.
     Прямоугольные области ограничиваются областью доступной для 
печа-
ти; прямоугольные области, которые вышли за пределы области, дост
упной
для печати, будут отсекаться.
     11.3.7. Примеры заполнения прямоугольной области
     Чтобы напечатать "шпон" с размерами области 3 на 5 дюймов,  
необ-
ходимо выполнить следующие шаги:
     1. Позиционировать курсор:
           Ec*p300x400Y       Этот шаг перемещает курсор в точку 
 (300,
                             400) в пределах PCL системы координа
т.
     2. Определить ширину шпона:
           Ec*c900A           Этот шаг устанавливает ширину шпона
  к
                             900 точкам (3 дюйма).
     3. Определить высоту шпона:
           Ec*c1500B          Этот шаг устанавливает высоту шпона
  к
                             1500 точкам (5 дюймов).
     4. Печатать шпон:
          Ec*c0P
     Этот пример позволяет напечатать изображение, показанное на 
рису-
нке 11-5.
     Чтобы  напечатать затененный на 25% прямоугольник с размером
 3 на
5 дюймов, необходимо выполнить следующие шаги:
     1. Позиционировать курсор:
           Ec*p300x400Y       Этот шаг перемещает курсор в точку 
 (300,
                             400) в пределах PCL системы координа
т.
     2. Определить ширину прямоугольника:
           Ec*c900A           Этот шаг устанавливает ширину к 900
  точ-
                             кам (3 дюйма).
     3. Определить высоту прямоугольника:
           Ec*c1500B          Этот шаг устанавливает высоту к 150
0 точ-
                             кам (5 дюймов).
     4. Определить идентификацию заполнения области:
           Ec*c25G            Этот  шаг устанавливает идентификац
ию за-
                             полнения области к 25.
     5. Печатать прямоугольную затененную область:
           Eс*с2P
     Этот пример позволяет  напечатать изображение, показанное на
  ри-
сунке 11-6.
                                11-9
	       (300,400)
	           і
	      	ЪДДіДДДДДДДДДДДДДДДДї
	        і  і   	    	    і
	        і  ш   	            і
	   	і  ЮЫЫЫЫЫЫ  	    і	
		і  ЮЫЫЫЫЫЫ          і
		і  ЮЫЫЫЫЫЫ          і
		і  ЮЫЫЫЫЫЫ          і
		і   	            і
		і	            і
		і	            і
		АДДДДДДДДДДДДДДДДДДДЩ	
     Рис.11-5. Пример шпона (сплошного заполнения)
		(300,400)
		    і
		ЪДДДЕДДДДДДДДДДДДДДДї
		і   і	            і
		і   ш	            і
		і   ......          і
		і   ......          і
		і   ......          і
		і   ......          і
		і   ......          і
		і	            і
		і	            і
		і	            і
		АДДДДДДДДДДДДДДДДДДДЩ
     Рис.11-6. Затененный прямоугольник
     Чтобы напечатать прямоугольную область с размерами 3 на 5 дю
ймов,
заполненную горизонтальными линиями,  необходимо  выполнить  след
ующие
шаги:
     1. Позиционировать курсор:
           Ec*p300x400Y       Этот шаг перемещает курсор в точку 
 (300,
                              400) в пределах PCL системы координ
ат.
     2. Определить ширину прямоугольника:
           Ec*c900A           Этот шаг устанавливает ширину прямо
уголь-
                             ника к 900 точкам (3 дюйма).
     3. Определить высоту прямоугольника:
           Ec*c1500B          Этот шаг устанавливает высоту прямо
уголь-
                             ника к 1500 точкам (5 дюймов).
     4. Определить идентификацию заполнения области:
           Ec*c1G             Этот шаг устанавливает идентификаци
ю  за-
                             полнения области к 1.
     5. Печатать прямоугольную область, заполненную по шаблону:
           Ec*c3P
     Этот  пример  позволяет напечатать изображение, показанное н
а ри-
сунке 11-7.
                                11-10 
		(300,400)
		    і
		ЪДДДЕДДДДДДДДДДДДДДДї
		і   і               і
		і   ш	            і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і   ДДДДДДДД        і
		і	            і
		і	            і
		і	            і
		АДДДДДДДДДДДДДДДДДДДЩ
     Рис.11-7. Пример шаблона (Pattern Example)


Яндекс цитирования