Cómo convertir imágenes en jpg, bmp y otros formatos al formato lib
Simplemente use la imagen en el archivo adjunto para usar Editar-Pegar fuente para encontrar la imagen que desea abrir y seleccione el formato que desea guardar en Guardar como. También puede abrirlo con una imagen haciendo clic derecho y seleccionando Abrir con. Además, la gestión de imágenes de Photoshop y Office2003 también tiene esta función.
Private Sub mnuconvertBMPtoJPG_Click()
Dim tmpimage As imgdes ' Descriptor de imagen
Dim tmp2image As imgdes
Dim rcode As Long
p>Dim calidad mientras
Dim vbitcount mientras
Dim bdat como BITMAPINFOHEADER ' Reservar espacio para estructura BMP
Dim bmp_fname como cadena
p>Dim jpg_fname As String
bmp_fname = "test.bmp"
jpg_fname = "test.jpg"
calidad = 75
'Obtener información sobre el archivo que queremos cargar
rcode = bmpinfo(bmp_fname, bdat)
Si (rcode <> NO_ERROR) Entonces
MsgBox "No se puede encontrar el archivo", 0, "¡Error encontrado!"
Salir de Sub
Fin
vbitcount = bdat.biBitCount
If (vbitcount >= 16) Then ' La imagen de 16 bits, 24 bits o 32 bits se carga en un buffer de 24 bits
vbitcount = 24
End If
'Asigna espacio para la imagen
rcode = allocimage(tmpimage, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth, bdat.biWidth)biWidth, bdat.biHeight)
' Asigna espacio para la imagen
rcode = allocimage(tmpimage, bdat., vbitcount)
Si (rcode <> NO_ERROR) Entonces
MsgBox "No hay suficiente memoria", 0, "¡Error encontrado! "
Salir del sub
Fin si
'Cargar imagen' Asigna espacio para la imagen
' p> 'Cargar imagen
p >rcode = loadbmp(bmp_fname, tmpimage)
Si (rcode <> NO_ERROR) Entonces
freeimage tmpimage 'Imagen libre en caso de error<
MsgBox "No se puede cargar el archivo",0,"¡Se encontró un error! "
Salir Sub
Fin
Si (vbitcount = 1) Entonces ' Si cargamos una imagen de 1 bit, conviértala a 8 bits imagen en escala de grises.
Convertir a imagen en escala de grises de 8 bits
'Porque jpeg solo admite imágenes en escala de grises de 8 bits o imágenes en color de 24 bits
rcode = allocimage(tmp2image, bdat. biWidth, bdat.biHeight , 8)
Si (rcode = NO_ERROR) Entonces
rcode = convert1bitto8bit(tmpimage, tmp2image)
freeimage tmpimage 'Reemplazar imagen de 1 bit con imagen en escala de grises
copyimgdes tmp2image, tmpimage
Finalizar si
Finalizar si
' Guardar imagen
rcode = savejpg( jpg_fname , tmpimage, calidad)
freeimage tmpimage
End Sub
............. Agregue estas definiciones y declaraciones a el módulo global Medio.........
'Descriptor de imagen
Escriba imgdes
ibuff as Long
stx tan largo
sty tan largo
endx tan largo
endy tan largo
buffwidth tan largo
endy Tan largo
buffwidth Tan largo
paleta Tan largo
colores Tan largo
imgtype Tan largo
bmh As Long
hBitmap As Long
Tipo de fin
TipoBITMAPINFOHEADER
biSize es largo
biWidth es largo
biHeight es largo
biPlanes es un número entero
biBitCount es un número entero
biCompression es largo
biSizeImageas Long
biXPelsPerMeter As Long
biYPelsPerMeter As Long
biClrUsed As Long
biClrImportant As Long
Tipo de fin
Declarar función bmpinfo Lib "VIC32.DLL" (ByVal Fname como cadena, bdat como BITMAPINFOHEADER) siempre
Declarar función allocimage Lib "VIC32.DLL" (imagen como imgdes)
Declarar Función convert1bitto8bit Lib "VIC32.DLL" (srcimg As imgdes, desimg As imgdes) Siempre
Declarar Sub copyimgdes Lib "VIC32.DLL" (srcimg As imgdes, desimg As imgdes)
Declarar función savejpg Lib "VIC32.DLL"
(ByVal Fname como cadena, srcimg como imgdes, calidad ByVal mientras) Mientras
"Procesamiento de imágenes ---- Crea tu propio Photoshop"
La mayor parte es código fuente. Contiene bmp<-->jgep<-->código GIF.
Además, hay muchas compras grupales de productos en Tuan IDC, que son baratos y tienen buena reputación
.