CreateImage()
Синтаксис
Result = CreateImage(#Image , Width , Height [, Depth [, BackColor]])
Описание
Создаёт пустое изображение (с черным фоном), которое можно использовать в качестве поверхности для вывода графики и рендеринга.
Параметры
#Image Номер, идентифицирующий новое изображение. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически. Width, Height Размеры нового изображения. И ширина, и высота должны быть больше нуля. Depth (дополн.) Глубина цвета для нового изображения. Допустимыми значениями могут быть: 24 и 32. По умолчанию используется 24-бит, если не указана глубина. BackColor (дополн.) Цвет фона в формате RGB(), используемый при создании изображения. Чтобы создать изображение с альфа-каналом установленным на полную прозрачность, вместо значения в формате RGB() можно использовать константу #PB_Image_Transparent. Это повлияет только на создание 32-битного изображения. Если параметр вовсе не указан, то цвет по умолчанию - черный.
Возвращаемое значение
Возвращает не нулевое значение, если изображение было успешно создано, в противном случае ноль. Если в качестве параметра #Image использовалось значение #PB_Any, то в случае успеха будет возвращен сгенерированный Номер.
Комментарии
Предел для размера изображения, которое может быть обработано, зависит от операционной системы и доступного объема памяти. Если доступно достаточное количество памяти, то изображения с размером до 8192x8192 пикселей могут обрабатываться всеми операционными системами, поддерживаемыми PureBasic.
Вы можете использовать ещё несколько функций для работы с созданным изображением:
StartDrawing() с ImageOutput() -- для рисования на созданном изображении
StartVectorDrawing() с ImageVectorOutput() -- для рисования на созданном изображении используя библиотеку векторной графики
CopyImage() -- для создания копии существующего изображения
GrabImage() -- для создания другого изображение из указанной области существующего изображения
DrawImage() с ImageID() -- для вывода изображения на текущей поверхности вывода.
ImageGadget() -- для отображения изображения в окне приложения
ButtonImageGadget() -- для создания кнопки с изображением в окне приложения
Пример (Фран)
If OpenWindow(0, 0, 0, 256, 256, "CreateImage", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0, 0, 0, 256, 256, 0) If CreateImage(0, 256, 256, 32, RGB(255, 255, 255)) StartDrawing(ImageOutput(0)) Ellipse(70, 50, 30, 10, RGB(0, 0, 255)) Ellipse(186, 50, 30, 10, RGB(0, 0, 255)) LineXY(128, 80, 128, 150, RGB(255, 0, 255)) RoundBox(70, 200, 110, 30, 20, 20, RGB(255, 0, 0)) StopDrawing() EndIf SetGadgetState(0, ImageID(0)) ; Просмотр Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf
См. также
LoadImage(), CatchImage(), FreeImage()
Поддерживаемые OS
Все