HOME ПРИМЕРЫ THANKS НОВИЧКАМ ДОКИ LINKS JavaScript Mail


 
 

Turbo Pascal Documentation

Процедура ImageSize

Модуль Graph


     Функция: Возвращает число байтов, необходимых для  сох-
ранения прямоугольной области экрана.
     Описание: ImageSize(x1, y1, x2, y2 : word)
      Тип результата: Слово (word).
     Примечания: Параметры x1, y1, x2 и y2 определяют прямо-
угольную  область экрана. Функция ImageSize определяет число
байтов, необходимых функции Getimage для сохранения заданной
области экрана. Размер двоичного образа области экрана вклю-
чает в себя также память, необходимую  для  двух  переменных
длиной  в  два  слова, в которых сохраняется ширина и высота
области экрана:

width  := x2 - x1 + 1;            { ширина }
height := y2 - y1 + 1;            { высота экрана }

     Размер памяти, необходимый для сохранения двоичного об-
раза  самой  области, вычисляется путем умножения ширины об-
ласти на ее высоту.
     Если объем памяти, необходимый для сохранения  области,
превышает ии равен 64К, то возвращается значение 0 и функция
GraphResult возвращает значение -11 (grError).
     Аналогичная процедура имеется в версии 2.0 Турбо-Си.
     Ограничения: Должен использоваться графический режим.
     Прочее: См. также процедуры GetImage, PutImage.
     Пример:

  uses Graph;
  var
    Gd, Gm : integer;
    P : pointer;
    Size : word;
  begin
    Gd := Detect;
    InitGraph(Gd, Gm, '');
    if GraphResult <> grOk then
       Halt(1);
    Bar(0, 0, GetMaxX, GetMaxY);
    Size := ImageSize(10,20,30,40)
    GetMem(P, Size)    { Выделить память в динамически
                         распределяемой области }
    GetImage(10,20,30,40,P^);
     Readln;
    ClearDevice;
    PutImage(100, 100, P^, NormalPut);
    Readln;
    CloseGraph;
  end.




HOME