combine images
combine images
I have two generated images and want to combine them into one before saving. How to?
Re: combine images
Do you want to combine them with transparency or just laid over each other without transparency? Or e.g. side by side?
Re: combine images
Here's a very simple example.
Code: Select all
EnableExplicit
Procedure Max(A, B)
If A => B
ProcedureReturn A
EndIf
ProcedureReturn B
EndProcedure
Procedure CombineImages(NewImage, LeftImage, RightImage)
Protected Image = CreateImage(NewImage, ImageWidth(LeftImage) + ImageWidth(RightImage), Max(ImageHeight(LeftImage), ImageHeight(RightImage)))
If Not Image
ProcedureReturn #False
EndIf
If StartDrawing(ImageOutput(NewImage))
DrawImage(ImageID(LeftImage), 0, 0)
DrawImage(ImageID(RightImage), ImageWidth(LeftImage), 0)
StopDrawing()
EndIf
ProcedureReturn Image
EndProcedure
UsePNGImageDecoder()
UseJPEGImageDecoder()
LoadImage(0, #PB_Compiler_Home + "\Examples\Sources\Data\flare.png")
LoadImage(1, #PB_Compiler_Home + "\Examples\Sources\Data\clouds.jpg")
ResizeImage(1, ImageWidth(1) / 2, ImageHeight(1) / 2)
CombineImages(2, 0, 1)
If OpenWindow(0, 0, 0, 800, 700, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ImageGadget(#PB_Any, 0, 0, 0, 0, ImageID(2))
EndIf
Repeat
Define Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow