Files
megasource/libs/DevIL-1.7.8/projects/powerbasic/imgconv.bas
T
2013-09-26 00:20:08 +02:00

175 lines
3.7 KiB
VB.net

'-----------------------------------------------------------------------------
' Convert Image using DevIL
' DevIL Sample program using Powerbasic.
'
' by Peter Scheutz, Scheutz & Clementsen Design
' Web: http://www.scheutz.dk
' e-mail: sourcecode@scheutz.dk
'
' Last modified: 06/22/2002
' Based on DevIL Ver. 1.6.1 PB incs
' Filename: imgview.bas
'
' Released under the GNU Lesser General Public License:
' http://www.gnu.org/copyleft/lesser.html
'
' For information on use and download of DevIL goto: http://openil.sourceforge.net/
' (Get docs and "End User Package")
'
' Report errors in the Powerbasic includes to e-mail above.
'
' For general help on Powerbasic and DevIL, try the forums at:
' http://www.powerbasic.com
'-----------------------------------------------------------------------------
#Register None
#Compile Exe "imgconv.exe"
Option Explicit
#Include "il.inc"
#Include "ilu.inc"
#Include "ilut.inc"
$If Not %Def(%TRUE)
%TRUE = 1
%FALSE = 0
#EndIf
$If Not %Def(%MAX_PATH )
%MAX_PATH = 260
#EndIf
%OVERWRITE = %False '%True
Function PbMain() As Long
Local ILErr As Dword
Local info As ILinfo
Local ID As Dword
Local errString As Asciiz*1024
Local Infile As Asciiz*%MAX_PATH
Local Outfile As Asciiz*%MAX_PATH
Infile="C:\test.bmp" ' OBS: Change this !
Outfile="C:\test.tga" ' OBS: Change this !
ilInit
ilPushAttrib %IL_ALL_ATTRIB_BITS
ILErr=ilGetError()
If ILErr <> 0 Then
errString = iluErrorString(ILErr)
MsgBox "Error in ilPushAttrib" & $CRLF & errString
Exit Function
End If
ilGenImages ByVal 1, ID
ILErr=ilGetError()
If ILErr <> 0 Then
errString = iluErrorString(ILErr)
MsgBox "Error in ilGenImages" & $CRLF & errString
Exit Function
End If
ilBindImage ID
ILErr=ilGetError()
If ILErr <> 0 Then
errString = iluErrorString(ILErr)
MsgBox "Error in ilBindImage" & $CRLF & errString
GoTo done
End If
' ilEnable %IL_FORMAT_SET
' ilEnable %IL_ORIGIN_SET
' ilEnable %IL_TYPE_SET
' ilFormatFunc %IL_RGB
' ilOriginFunc %IL_ORIGIN_LOWER_LEFT
' ilTypeFunc %IL_UNSIGNED_BYTE
'
' ilEnable %IL_CONV_PAL
' Do
' ILErr = ilGetError()
' If ILErr<>0 Then
' errString = iluErrorString(ILErr)
' MsgBox "Error in ..Func or ilEnable" & $CRLF & errString
' End If
' Loop While (ILErr <> 0)
ilLoadImage infile
ILErr=ilGetError()
If ILErr <> 0 Then
errString = iluErrorString(ILErr)
MsgBox "Error in ilLoadImage" & $CRLF & errString
GoTo done
End If
' unrem to test these effects.
' iluRotate 50
' iluPixelize 5
' iluEnlargeImage 2,2,4
' iluBlurGaussian 4
' Do
' ILErr = ilGetError()
' If ILErr<>0 Then
' errString = iluErrorString(ILErr)
' MsgBox "Error in Effect" & $CRLF & errString
' End If
' Loop While (ILErr <> 0)
If %OVERWRITE=%True And ilIsDisabled(%IL_FILE_OVERWRITE) Then
ilEnable %IL_FILE_OVERWRITE
ilSaveImage outfile
'ilDisable %IL_FILE_OVERWRITE ' done by ilPushAttrib/ilPopAttrib
Else
ilSaveImage outfile
End If
ILErr=ilGetError()
If ILErr <> 0 Then
errString = iluErrorString(ILErr)
MsgBox "Error in ilSaveImage" & $CRLF & errString
GoTo done
Else
MsgBox "Picture converted"
End If
done:
ilDeleteImages 1 , ID
ilPopAttrib
' clear additional errors
Do
ILErr = ilGetError()
Loop While (ILErr <> 0)
End Function