10. Изображение¶
-
BitMapToJpeg
(bmp: TbtkScriptBitMapImageObject): TbtkScriptJpegImageObject¶ Конвертирует тип
TbtkScriptBitMapImageObject
вTbtkScriptJpegImageObject
Parameters: bmp (TbtkScriptBitMapImageObject) – Конвертируемый объект. Return type: TbtkScriptJpegImageObject <Pascal> bmp := ScreenShot.PrintWindow; jpgImg := BitMapToJpeg(bmp); jpgImg.SaveToFile('Window.jpg'); </Pascal>
10.1. BitMapToJpeg¶
-
class
BitMapToJpeg
Конвертирует тип
TbtkScriptBitMapImageObject
вTbtkScryptJpegImageObject
10.3. TbtkScriptJpegImageObject¶
10.4. 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><doby>'#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
-
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
<pascal> imgList := TbtkImageLIst.CreateFromBlob(GetVar('blobDataVCL')); try blob := imgList.GetImageBlob(i, 'png'); SaveBlobToFile('c:\temp\image.png', blob); finally imgList.Free; end; </pascal>
-
Create
(Width, Height: Integer): TbtkImageList¶ Создать новый экземпляр коллекции пиктограмм не содержащий ни одного изображения. Ширина и высота изображений будущей коллекции задаётся параметрами сразу.
Parameters: - Width (Integer) – Ширина изображений в коллекции
- Height (Integer) – Высота изображений в коллекции
Return type:
-
AddImage
(BlobData: Variant)¶ Добавить изображение в конец списка пиктограмм. Размеры изображения обязаны соответствовать размерам указанным в списке (ImageList) - параметра конструктора Width, Height и, соответственно, свойства Width и Height (только чтение).
Parameters: BlobData (Variant) – Бинарные данные графического файла (содержимое файла). Поддерживаемые форматы графики: bmp, gif, png, jpeg. Формат графики определяется по сигнатурам формата в бинарных данных.
-
SerializeToBlob
(): Variant¶ Сериализовать набор пиктограмм (ImageList) в блоб (бинарные данные).
Return type: Variant