Энциклопедия Turbo Pascal. Главы 9-11
Страница 19. Машинно-независимый набор символов


Машинно-независимый набор символов

     Каждый машинно-независимый  символ конструируется, используя
матрицу 4х6 пикселов. Например, буква "Е" конструируется, как это
показано на рис.10-3.  Так как машинно-независимый набор символов
создается с помощью графического инструментария,  то можно  изме-
нять размер букв, используя масштабирующий коэффициент.

           -----------------------------------------
                   ---T--T--T--¬
                   +--+--+--+--+
                   +--+--+--+--+
                   +--+--+--+--+
                   +--+--+--+--+
                   +--+--+--+--+
                   L--+--+--+---
           ----------------------------------------
    Рис.10-3. Построение буквы "Е" в матрице 4х6 пикселов

DrawText и DrawTextW

    Процедуры DrawText и DrawTextW объявляются следующим образом:
    procedure DrawText(X, Y, Scale: integer, Msg: WrkString);
    procedure DrawTextW(X, Y, Scale: integer, Msg: WrkString);
Данные процедуры выводят сообщение Msg,  начиная с координат X, Y
в масштабе,  заданном параметром Scale.  WrkString  декларируется
инструментарием, как строка максимальной длины. Однако, вы можете
использовать любой тип, который пожелаете.
     Простая программа, показанная далее, отображает примеры пер-
вых шести размеров шрифта.

    program text_graphics;

    {Si typedef.sys}
    {Si graphix.sys}
    {Si kernel.sys}

    var
      i:integer;

    begin
      InitGraphic;
      DefineWorld(1, 0, 0, 1000, 1000);
      SelectWorld(1);
      SelectWindom(1);
      DrawBorder;

      for i: = 1 to 6 do
      begin
       DrawTextW(10, i*140, i, 'Это       тест')
      end;
      repeat until KeyPressed;
      LeaveGraphic;
    end.

     Главным преимуществом применения машинно-независимых  симво-
лов является то,  что их размер может быть изменен для удовлетво-
рения специфическим нуждам вашей программы.

 
Следующая статья »