50501

Дослідження текстового та графічного режимів роботи EPSON-сумісних матричних принтерів

Лабораторная работа

Информатика, кибернетика и программирование

Висновок: у даній лабораторній роботі було розглянуто різні шрифти, які використовуються при друку, а також різні режими друку. Було створено програму, яка генерує коди, які розуміє принтер. На симуляторі принтера підтвердилася робочість програми і було роздруковано текст, зображення, а також візитку, яка містила 2 попередні пункти одночасно.

Украинкский

2014-01-25

67.5 KB

2 чел.

Міністерство освіти і науки України

Національний технічний університет України

“Київський політехнічний інститут”

ІПСА

Кафедра Системного проектування

Лабораторна робота №1

«Дослідження текстового та графічного режимів роботи EPSON-сумісних матричних принтерів»

Виконав:

студент групи ДА – 01

Воробік А.В.

Київ 2012

Мета: вивчення принципів роботи, можливостей та програмування EPSON-сумісних принтерів

Виконання завдання

1.1.

Командна послідовність

Шрифт

Символьна

Кодова

ESC SO

27 14

Широкий шрифт

DC4

20

Відміна широкого шрифту

ESC SI

27 15

Стислий шрифт

DС2

18

Відміна стислого шрифту

ESC E

27 69

Жирний шрифт

ESC F

27 70

Відміна жирного шрифту

ESC G

27 71

Подвійний друк

ESC H

27 72

Відміна подвійного друку

ESC M

27 77

Шрифт "еліта"

ESC P

27 80

Шрифт "піка"

ESC S 0

27 83 0

Друк в верхній половині рядку

ESC S 1

27 83 1

Друк в нижній половині рядку

ESC T

27 84

Відміна друку в верхній або нижній частині строки

ESC 1

27 45 1

Режим підкреслювання

ESC 0

27 45 0

Відміна режиму підкреслювання

Результати роботи тестової програми:

  1.   Друк тексту

ESC SO

Vorobik Andriy Vitaliyovich

 

ESC SI

Vorobik Andriy Vitaliyovich

ESC E

Vorobik Andriy Vitaliyovich

ESC G

Vorobik Andriy Vitaliyovich

ESC 1

Vorobik Andriy Vitaliyovich

  1.  Друк зображення

Друк зображення відбувається у режимі графіки одинарної площини ESC К

  1.  Друк візитки

┌─────────────────────────────────────────────────────────────┐

│                                                             │

│                                                             │

│                                  │

│                                  │

│                                  │

│                                  │

│Vorobik Andriy                    │

│                                  │

│                                  │

│                                  │

│DA-01                             │

│                                  │

│                                                             │

│                                                             │

│                                                             │

└─────────────────────────────────────────────────────────────┘

Лістинг програми

#include <iostream>

#include <fstream>

using namespace std;

unsigned char cbuf[160*160];

void text();

void image();

void vizitka()

{

   FILE *f; int i,j;

   f = fopen("visitka.txt", "wb");

   fprintf(f, "%c", 218);

   for(i=0;i<61;i++)

   {

       fprintf(f, "%c", 196);

   }

   fprintf(f, "%c", 191);

   for(j=0; j<2; j++)

   {

       fprintf(f, "\n%c", 179);

       for (i=0;i<=60;i++)

       {

           fprintf(f, " ");

       }

       fprintf(f, "%c", 179);

   }

   for(j=0; j<10; j++)

   {

       int dx=0;

       fprintf(f, "\n%c%c%c%c%c",179,27,'K',163,0);

       fwrite(cbuf+j*160,1,160,f);

       fprintf(f, "%c%c%c", 0,0,0);

       if (j==4) { fprintf( f, "Vorobik Andriy");dx=18;}

       if (j==8) { fprintf( f, "DA-01");dx=5; }

       for (i=0;i<=(33-dx);i++)

       fprintf(f, " ");

       fprintf(f, "%c", 179);

   }

   for(j=0; j<3; j++)

   {

       fprintf(f, "\n%c", 179);

       for (i=0;i<=60;i++)

       {

           fprintf(f, " ");

       }

       fprintf(f, "%c", 179);

   }

   fprintf(f, "\n\r%c", 192);

   for(i=0;i<61;i++)

   {

       fprintf(f, "%c", 196);

   }

   fprintf(f, "%c", 217);

   fclose(f);

}

int main()

{

   text();

   image();

   vizitka();

   return 0;

}

void text()

{

   FILE *stream;

   char *s = "Vorobik Andriy Vitaliyovich";

   stream = fopen("result.txt", "wb");

   fprintf (stream, "%c%c%s%c\n\r", 27, 14,s,20);

   fprintf (stream, "%c%c%s%c\n\r", 27, 15,s,18);

   fprintf (stream, "%c%c%s%c%c\n\r", 27, 69,s,27,70);

   fprintf (stream, "%c%c%s%c%c\n\r", 27, 71,s,27,72);

   fprintf (stream, "%c%c%c%s%c%c%c\n\r", 27, 45,1,s,27,45,0);

   fclose(stream);

}

void image()

{

   unsigned short pixel[]={};

   int h,w,i,y,x;

   char buf=0;

   int pos=0;

   h=160; w=160;

   FILE *res;

   res = fopen("result2.txt", "wb");

   for(y=0; y<h; y=y+8)

   {

       fprintf(res,"%c%c%c%c",27,'K',w,0);

       for(x=0; x<w; x++)

       {

       buf=0;

       for(i=0; i<8; i++)

            {

               buf<<=1;

               if(pixel[x+(y+i)*w]<128)    buf++;

            }

           fputc(buf,res);

           cbuf[pos++]=buf;

       }

       fprintf(res,"\n\r");

    }

   fclose(res);

}

 

Висновок: у даній лабораторній роботі було розглянуто різні шрифти, які використовуються при друку, а також різні режими друку. Було створено програму, яка генерує коди, які розуміє принтер. На симуляторі принтера підтвердилася робочість програми і було роздруковано текст, зображення, а також візитку, яка містила 2 попередні пункти одночасно.


 

А также другие работы, которые могут Вас заинтересовать

54558. Сон – залог здоровья 90 KB
  Задачи: расширить представление о сне; проделать опыты и упражнения, показывающие влияние сна на здоровье человека; сделать выводы, предложить здоровые нормы поведения перед сном; воспитывать потребность в здоровом образе жизни.
54559. Сущность, место и роль государственной собственности 18.58 KB
  Собственность относится к числу наиболее важных и сложных проблем экономики, и экономической теории. История экономической жизни общества в периоды повышенной социальной активности ведет, как правило, к перераспределению объектов и прав собственности.
54560. Основные черты рыночной экономики. Функции рынка 19.07 KB
  Современная экономика всех развитых государств носит рыночный характер, это объясняется тем, что рыночная экономика оказалась наиболее эффективной и гибкой для решения основных экономических проблем.
54561. Основні методи доведення нерівностей 255.5 KB
  Мета: освітня: систематизувати та відкоригувати вміння та навички доводити нерівності різними методами: використання означення нерівності доведення від супротивного використання відомої нерівності виділення квадрата двочлена застосування ключових нерівностей; перевірити та встановити рівень оволодіння учнями способів доведення нерівностей вміння та навички у нестандартних ситуаціях творчість учнів у завданнях найвищого рівня завданнях олімпіадного характеру; повторити глибоко осмислити навчальний матеріал з метою формування...
54562. Розробка уроків (пар) алгебри для 9-го класу з теми «Нерівності» 865 KB
  Разом з розв’язаними вправами вправами для розв’язування біля дошки приклади для самостійного розв’язку учнями роботою з картками домашніми завданнями завданнями для повторення матеріалу за попередні класи та теми все це є єдиним цілим для вчителя який візьме дану розробку і буде спиратися на неї як на свій власний конспект. Включення ж до теми методу інтервалів є логічним кроком при розгляді теорії нерівностей адже він просто губиться при подальшому викладанні і при нагоді може слугувати методом розв’язування квадратичних...
54563. Розвязування квадратичних нерівностей 231 KB
  Мета уроку: Формувати вміння та навички з розвязування Квадратичних нерівностей; розвивати логічне мислення, мову учнів; виховувати цікавість до математики, культуру математичних записів. Тип уроку: урок формування вмінь і навичок. Обладнання: компютера, таблиці.
54564. Лінійні нерівності з однією змінною 51.5 KB
  Мета уроку: систематизувати і узагальнити знання учнів по темі продовжити формувати практичні навики по розвязуванню нерівностей; на прикладах показати учням застосування нерівностей до практичних задач; стежити за дотриманням учнями графічної культури; розвивати математичну мову логічне мислення; вчити учнів працювати з підручником. Що називається розв`язком нерівності Що означає розв’язати нерівність 4. Сформулювати властивості які використовуються при розв’язуванні нерівностей. Ті учні які під час попередньої...
54565. Первые экономические школы. Меркантилисты и физиократы 18.69 KB
  В эту эпоху экономической идеологией молодой торговой буржуазии был меркантилизм (от mercantile — торговый). Меркантилисты не были профессиональными учеными, как правило, это были выходцы из купцов, мелких и средних буржуа. Они точно определили способы получения крупных состояний: торговля, кредит, война.
54566. Біологічне значення, загальний план будови, властивості та розвиток нервової системи 380 KB
  Обладнання: муляж Головний мозок таблиці Нервова система Головний мозок Спинний мозок Нервова клітина Схема рефлекторної дуги презентація Будова спинного і головного мозку роздавальний матеріал: будова нейрона опорний конспект Будова нервової системи Тип заняття: лекція 1год. Велика частина мислителів того часу не представляла значення мозку для психічної діяльності людини і навіть великий Аристотель вважав не мозок а серце вмістилищем душі. Гіппократ вперше відзначив що поранення голови часто ведуть до...