The Visual Basic 6 programmeringsspråk ( VB6 ) ikke inneholder en innebygd kontroll for å konvertere BMP-filer til andre bildeformater . Eksport av en BMP -fil til GIF -formatet krever programmerer å bestemme størrelsen på BMP-filen , allokere minne for bildet og laste BMP-filen . Siden GIF -formatet støtter bare 8 -bits oppløsning , må du justere oppløsningen før du lagrer GIF-fil for å eksportere en BMP-bildefil til GIF -format. Instruksjoner
en
Klikk på "Start "-knappen i Windows og velg " Microsoft Visual Basic " fra " Alle programmer "-menyen .
2
Klikk " File ", " Open " og åpne Visual Basic program som du ønsker å eksportere en BMP-bildefil til GIF -format.
3
Legg til følgende kode etter " Global " ; linje i programmet : en
Private Sub mnuconvertBMPtoGIF_Click ( ) Dim tmpimage Som imgdesDim tmp2image Som imgdesDim rcode Som LongDim vbitcount Som LongDim farger som LongDim bdat Som BITMAPINFOHEADERDim bmp_fname Som StringDim gif_fname Som StringConst CR_TSDDIFF = 3
< p > bmp_fname = " test.bmp " gif_fname = " test.gif "
rcode = bmpinfo ( bmp_fname , bdat ) Hvis ( rcode < > NO_ERROR ) ThenMsgBox " Ingen fil " , 0 , " ; Feil "Exit SubEnd Hvis
vbitcount = bdat.biBitCountIf ( vbitcount > = 16 ) Thenvbitcount = 24End Hvis
rcode = allocimage ( tmpimage , bdat.biWidth , bdat.biHeight , vbitcount ) if ( rcode < > NO_ERROR ) ThenMsgBox " lite minne" , 0 , "Feil " Exit SubEnd Hvis
rcode = loadbmp ( bmp_fname , tmpimage ) Hvis ( rcode < > NO_ERROR ) Thenfreeimage tmpimage 'Free bilde på errorMsgBox " Ingen fil " , 0 , "Feil " Exit SubEnd Hvis
p Hvis ( vbitcount 24 = ) Thenrcode = allocimage ( tmp2image , bdat.biWidth , bdat.biHeight , 8 ) Hvis ( rcode = NO_ERROR ) Thencolors = 256reduction_mode = CR_TSDDIFFrcode = convertrgbtopalex ( farger, tmpimage , tmp2image , reduction_mode ) FreeImage tmpimagecopyimgdes tmp2image , tmpimageEnd IfEnd Hvis
rcode = savegifex ( gif_fname , tmpimage , 8, 0 )
< p > FreeImage tmpimage
End Sub
4
Klikk på "File " og deretter " Lagre" for å legge til BMP til GIF eksport-funksjon i programmet.