Изображение

BitMapToJpeg(bmp: TbtkScriptBitMapImageObject) TbtkScriptJpegImageObject

Конвертирует тип TbtkScriptBitMapImageObject в TbtkScriptJpegImageObject

Parameters:

bmp (TbtkScriptBitMapImageObject) – Конвертируемый объект.

Return type:

TbtkScriptJpegImageObject

Пример использования
<Pascal>
  bmp := ScreenShot.PrintWindow;
  jpgImg := BitMapToJpeg(bmp);
  jpgImg.SaveToFile('Window.jpg');
</Pascal>

Warning

Не реализовано

BitMapToJpeg

class BitMapToJpeg

Конвертирует тип TbtkScriptBitMapImageObject в TbtkScryptJpegImageObject

Warning

Не поддерживается в Application Server

TbtkScriptBitMapImageObject

class TbtkScriptBitMapImageObject

Оболочка для TBitMap.

Warning

Не поддерживается в Application Server

TbtkScriptJpegImageObject

class TbtkScriptJpegImageObject

Оболочка для TJpegImage.

Warning

Не поддерживается в Application Server

SaveToFile(FileName: String)

Сохраняет изображение в файл.

Parameters:

FileName (String) – Имя файла.

Пример использования
<Pascal>
  bmp := ScreenShot.PrintWindow;
  jpgImg := BitMapToJpeg(bmp);
  jpgImg.SaveToFile('Window.jpg');
</Pascal>

TbtkImageList

class TbtkImageList

Коллекция пиктограмм, класс внутреннего формата клиента “Global1”

Примеры использования:

  • Сохранить набор пиктограмм в виде Html документа, экспортировать в html.

    <PASCAL>
      a :=  TbtkImageList.CreateFromBlob(GetVar('blobDataVCL'));
      html :=  '';
      if Assigned(b) then
      try
        listH :=  VarToStr(b.Height);
        listW :=  VarToStr(b.Width);
        html :=  '<html><body>'#13;
        for i := 0 to b.Count - 1  do
          html := html +  ' <img index="' + VarToStr(i) + '" src="data:image/png;base64, ' +
          BlobToBase64(b.GetImageBlob(i, 'png')) + '"/> ';
        html := html + '</body></html>';
      finally
        b.Free;
      end;
      SaveBlobToFile('d:\tmp\1.html',  html);
    </PASCAL>
    
  • Преобразовать alpha-слов коллекции пиктограмм (сделать новый слой прозрачности, по цвету прозрачности - как это делал старый алгоритм, не учитывающий возможности существования alpha-слоя)

    <PASCAL>
    alphalessImageList :=  TbtkImageList.CreateFromBlob(GetVar('blobDataVCL'));
    try
      newImageList :=  TbtkImageList.Create(alphalessImageList.Width,  alphalessImageList.Height);
      try
        for i := 0 to a.Count - 1  do
          newImageList.AddImage(alphalessImageList.GetImageBlob(i,  'png.realpha'));
        SetVar('blobDataVCL',  newImageList.SerializeToBlob);
      finally
        newImageList.Free;
      end;
    finally
      alphalessImageList.Free;
    end;
    </PASCAL>
    
Height Integer

Высота пиктограмм в наборе, в пикселях.

Атрибут только для чтения

Return type:

Integer

Width Integer

Ширина пиктограмм в наборе, в пикселях.

Атрибут только для чтения

Return type:

Integer

Count Integer

Количество пиктограмм в наборе.

Атрибут только для чтения

Return type:

Integer

CreateFromBlob(BlobData: Variant) TbtkImageList

Создать новый экземпляр коллекции пиктограмм загрузив содержимое из блоба.

Parameters:

BlobData (Variant) – Бинарные данные - сериализованный в блоб экземпляр TbtkImageList. см. описание метода TbtkImageList.SerializeToBlob.

Return type:

TbtkImageList

Warning

Не реализовано

GetImageBlob(Index: Integer; Format: String = 'bmp') Variant

Возвращает i-тую картинку в наборе пиктограмм, возвращаются бинарные данные в заданном параметром Format графическом формате.

Parameters:
  • Index (Integer) – Порядковый номер экспортируемого изображения в коллекции пиктограмм.

  • Format (String) –

    Возможные значения (поддерживаемые форматы): - ‘bmp’ - ‘png’ - ‘jpeg’ - ‘gif’ - ‘png.realpha’

    Регистр написание не важен.

    Note

    ’png.realpha’ - тот же png формат, но содержащийся в изображении коллекции alpha-слой(прозрачность/полупрозрачность) игнорируется и перезаписывается новым. Новый слой создаётся на основании “цвета прозрачности” - цвет верхнего-левого пикселя; никакой полупрозрачности. Этот формат экспорта необходим для возможности использования старых ImageList’ов, которые заполнялись изображениями без alpha-слоя.

Return type:

Variant

Пример, как сохранить i-тую картинку в файл:
<pascal>
  imgList := TbtkImageList.CreateFromBlob(GetVar('blobDataVCL'));
  try
    blob := imgList.GetImageBlob(i, 'png');
    SaveBlobToFile('c:\temp\image.png', blob);
  finally
    imgList.Free;
  end;
</pascal>

Warning

Не реализовано

Create(Width, Height: Integer) TbtkImageList

Создать новый экземпляр коллекции пиктограмм не содержащий ни одного изображения. Ширина и высота изображений будущей коллекции задаётся параметрами сразу.

Parameters:
  • Width (Integer) – Ширина изображений в коллекции

  • Height (Integer) – Высота изображений в коллекции

Return type:

TbtkImageList

Warning

Не поддерживается в Application Server

AddImage(BlobData: Variant)

Добавить изображение в конец списка пиктограмм. Размеры изображения обязаны соответствовать размерам указанным в списке (ImageList) - параметра конструктора Width, Height и, соответственно, свойства Width и Height (только чтение).

Parameters:

BlobData (Variant) – Бинарные данные графического файла (содержимое файла). Поддерживаемые форматы графики: bmp, gif, png, jpeg. Формат графики определяется по сигнатурам формата в бинарных данных.

Warning

Не поддерживается в Application Server

SerializeToBlob() Variant

Сериализовать набор пиктограмм (ImageList) в блоб (бинарные данные).

Return type:

Variant

Warning

Не поддерживается в Application Server