Code archives/Graphics/Image Packer

This code has been declared by its author to be Public Domain code.

Download source code

Image Packer by Luke1112011
This code will pack images compatible with blitz into a bitmap. I do not know of too many other programs similar to this, except the image packer in the toolbox, which I tried, but didn't like. Allows you to specify columns, rows, and number of images, as well as folder to grab from. Currently grabs in alphabetical order, and only outputs to a bitmap. Also only works with 96x96. Should be easy to change. This should be good for beginners.
Print "Please Enter The Folder Of Images To Pack - "
folder$ = Input$()
num$ = Input$("Enter Number Of Images - ")
numr$ = Input$("Enter Number Of Rows - ")
numc$ = Input$("Enter Number Of Cols - ")
If FileType(folder$) <> 2 Then
	RuntimeError "Error: Invalid Input"
EndIf
myDir = ReadDir(folder$)
packed = CreateImage((Int(num$)/Int(numr$))*96,(Int(num$)/Int(numc$))*96)
r% = 0
c% = 0
SetBuffer ImageBuffer(packed)
Repeat
Print "1"
file$ = NextFile$(myDir)
Print "2"
If file$ = "" Then
	Exit
EndIf
If FileType(folder$+"\"+file$) = 0 Then
	Exit
EndIf
If Not file$ = "." Then
	If Not file$ = ".." Then

image = LoadImage(folder$+"\"+file$)
DrawImage image,c,r
FreeImage image
If c+96 >= (Int(num$)/Int(numr$))*96 Then
	c = 0
	r = r + 96
Else
	c = c + 96
EndIf
	EndIf
EndIf
Forever
SaveImage packed,folder$+"\packed.bmp"
CloseDir myDir
FreeImage packed

Comments

None.

Code Archives Forum