Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: pedraosone en 24 Julio 2009, 23:20 pm



Título: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 24 Julio 2009, 23:20 pm
Hola, una vez mas me dirijo a la comunidad a ver si pueden ayudarmecon una duda que tengo
me gustaria que la aplicacion que ando creando pueda ser capaz de tomar una imagen .jpg y transformarla en una imagen .bmp
si alguien me indicara como podria hacerlo lo agradeceria pero agradeceria mas algun codigo de ejemplo.
muchas gracias a todos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic
Publicado por: XcryptOR en 25 Julio 2009, 00:19 am
si claro que se puede hacer, en el momento solo te puedo ayudar con este code pero el problema es que depemde de una dll externa "VIC32", igual aqui te dejo el codigo, y la libreria.

Código
  1. Declare Function jpeginfo Lib "VIC32.DLL" (ByVal Fname As String, jdat As JpegData) As Long
  2. Declare Function allocimage Lib "VIC32.DLL" (image As imgdes, ByVal wid As Long, ByVal leng As Long, ByVal BPPixel As Long) As Long
  3. Declare Function loadjpg Lib "VIC32.DLL" (ByVal Fname As String, desimg As imgdes) As Long
  4. Declare Sub freeimage Lib "VIC32.DLL" (image As imgdes)
  5. Declare Function savebmp Lib "VIC32.DLL" (ByVal Fname As String, srcimg As imgdes, ByVal compression As Long) As Long
  6.  
  7. ' Image descriptor
  8. Type imgdes
  9.   ibuff As Long
  10.   stx As Long
  11.   sty As Long
  12.   endx As Long
  13.   endy As Long
  14.   buffwidth As Long
  15.   palette As Long
  16.   colors As Long
  17.   imgtype As Long
  18.   bmh As Long
  19.   hBitmap As Long
  20. End Type
  21.  
  22. Type JpegData
  23.    ftype As Long
  24.    width As Long
  25.    length As Long
  26.    comps As Long
  27.    precision As Long
  28.    sampfac0 As Long
  29.    sampfac1 As Long
  30.    sampfac2 As Long
  31.    sampfac3 As Long
  32.    vbitcount As Long
  33. End Type
  34.  
  35.  
  36. Public Sub Main()
  37.  
  38.  
  39. Dim tmpimage As imgdes
  40.   Dim rcode As Long
  41.   Dim jdat As JpegData     ' Reserve space for JPEG file info
  42.   Dim bmp_fname As String
  43.   Dim jpg_fname As String
  44.  
  45.   bmp_fname = "pathmyfilebmp.bmp"
  46.   jpg_fname = "pathmyfile.jpg"
  47.  
  48.   ' Get info on the file we're to load
  49.   rcode = jpeginfo(jpg_fname, jdat)
  50.   If (rcode <> NO_ERROR) Then
  51.      MsgBox "Cannot find file", 0, "Error encountered!"
  52.      Exit Sub
  53.   End If
  54.  
  55.   ' Allocate space for an image
  56.   rcode = allocimage(tmpimage, jdat.width, jdat.length, jdat.vbitcount)
  57.   If (rcode <> NO_ERROR) Then
  58.     MsgBox "Not enough memory", 0, "Error encountered!"
  59.     Exit Sub
  60.   End If
  61.  
  62.   ' Load image
  63.   rcode = loadjpg(jpg_fname, tmpimage)
  64.   If (rcode <> NO_ERROR) Then
  65.      freeimage tmpimage ' Free image on error
  66.      MsgBox "Cannot load file", 0, "Error encountered!"
  67.      Exit Sub
  68.   End If
  69.  
  70.   ' Save image
  71.   rcode = savebmp(bmp_fname, tmpimage, 0)
  72.   freeimage tmpimage
  73. End Sub

Descargar DLL (http://www.mediafire.com/?mtfylwdzigm)


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic
Publicado por: pianista en 25 Julio 2009, 00:35 am
Si no quieres usar dll, siempre puedes mirar como funcionan las cabeceras de jpg y bmp, e intentar programarla tu en algun lenguaje de programación...
Recuerdo que una vez hice en C algo que fusionaba dos jpg, no es algo muy complicado, lo único buscar el formato jpg y ver para que sirve cada byte

Saludos


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic
Publicado por: pedraosone en 25 Julio 2009, 00:36 am
muchas gracias por tan pronta ayuda amigo. me surge la siguiente duda, esa libreria la nesesitaria mi aplicacion para poder funcionar o solo la nesesitare para compilar el programa
nuevamente muchas gracias


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic
Publicado por: XcryptOR en 25 Julio 2009, 00:42 am
en vb si usas librerias como estas siempre seras dependiente de ellas, como dice el post anterior es mejor a puro vb pero requiere de tiempo, igualmente si la necesitas en tu aplicacion compilada puedes agregarla como recurso luego la extraes y la registras y ya.

saludos espero te haya sido de ayuda


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic
Publicado por: pedraosone en 25 Julio 2009, 00:44 am
Si no quieres usar dll, siempre puedes mirar como funcionan las cabeceras de jpg y bmp, e intentar programarla tu en algun lenguaje de programación...
Recuerdo que una vez hice en C algo que fusionaba dos jpg, no es algo muy complicado, lo único buscar el formato jpg y ver para que sirve cada byte

Saludos

muchas gracias pero apenas comienzo con el vbasic y hay muchas cosas que no entiendo aun
como eso de averiguar para que sirve cada byte pero gracias de todos modos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 25 Julio 2009, 00:46 am
en vb si usas librerias como estas siempre seras dependiente de ellas, como dice el post anterior es mejor a puro vb pero requiere de tiempo, igualmente si la necesitas en tu aplicacion compilada puedes agregarla como recurso luego la extraes y la registras y ya.

saludos espero te haya sido de ayuda
muchas gracias amigo al menos ya tengo material para ir probando y ver que tal funciona
gracias nuevamente a todos
doy el post por solucionado


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: XcryptOR en 25 Julio 2009, 00:47 am
mira esto tambien te puede servir

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=1&txtCodeId=7270


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 25 Julio 2009, 00:51 am
mira esto tambien te puede servir

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=1&txtCodeId=7270

muchas gracias xcryptor lo probare tambien a vere si logro solucionar lo que tengo en mente
nuevamente muchas gracias a todos


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: seba123neo en 25 Julio 2009, 01:27 am
mira esto tambien te puede servir

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=1&txtCodeId=7270

muchas gracias xcryptor lo probare tambien a vere si logro solucionar lo que tengo en mente
nuevamente muchas gracias a todos


pedraosone busca un poco en internet, busque 10 segundos y encontre un modulo de Leandro que lo hace y mas codigos por ahi...BUSCA

saludos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 25 Julio 2009, 01:42 am
mira esto tambien te puede servir

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=1&txtCodeId=7270

muchas gracias xcryptor lo probare tambien a vere si logro solucionar lo que tengo en mente
nuevamente muchas gracias a todos


pedraosone busca un poco en internet, busque 10 segundos y encontre un modulo de Leandro que lo hace y mas codigos por ahi...BUSCA

saludos.

gracias sebas si tengo algun problema con lo que me han puesto aqui lo hare descuide.
nuevamente gracias a todos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: LeandroA en 25 Julio 2009, 02:48 am
aver... creo que aqui hay un error de interpretacion... ;D

generalmente todos buscan pasar de bmp a jpg, pero segun dice el titulo el lo que quiere es de jpg a bmp, y quizas como es nuevo no sabe lo facil que seria...

pregunto pedraosone  vose queres pasar de JPG a BMP???, si es asi es tan facil como esto.

SavePicture LoadPicture("C:\Foto.JPG"), "C:\Foto.BMP"


Saludos


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 25 Julio 2009, 12:44 pm
aver... creo que aqui hay un error de interpretacion... ;D

generalmente todos buscan pasar de bmp a jpg, pero segun dice el titulo el lo que quiere es de jpg a bmp, y quizas como es nuevo no sabe lo facil que seria...

pregunto pedraosone  vose queres pasar de JPG a BMP???, si es asi es tan facil como esto.

SavePicture LoadPicture("C:\Foto.JPG"), "C:\Foto.BMP"


Saludos
LeandroA eso es precisamente lo que andaba buscando amigo , asi de sencillo fue pero quien no sabe es como quien no ve  ;D
y estuve bastante tiempo buscando en google pero todo hacia referencia a lo contrario aunque entre todas las paginas que mire solo en una haye una solucion igual pero no sabia aplicarla y con lo que me has puesto mas un poco de pensamiento he logrado solucionar el problema.
nuevamente gracias a todos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: seba123neo en 25 Julio 2009, 18:14 pm
aver... creo que aqui hay un error de interpretacion... ;D

generalmente todos buscan pasar de bmp a jpg, pero segun dice el titulo el lo que quiere es de jpg a bmp, y quizas como es nuevo no sabe lo facil que seria...

pregunto pedraosone  vose queres pasar de JPG a BMP???, si es asi es tan facil como esto.

SavePicture LoadPicture("C:\Foto.JPG"), "C:\Foto.BMP"


Saludos

pues claro, como no se me oucurrio, si casi todos buscan el metodo inverso para que peso menos al enviar la foto...ya la otroa vez preguntaron esto con el wallpaper...

saludos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 26 Julio 2009, 02:48 am

pues claro, como no se me oucurrio, si casi todos buscan el metodo inverso para que peso menos al enviar la foto...ya la otroa vez preguntaron esto con el wallpaper...
saludos.

Bueno amigos ya tengo mi aplicacion lista para distribuirla de forma gratuita gracias a vuestra colaboracion ahora y como muestra de agradecimiento, me gustaria postearla en este foro aunque no se en que apartado iria pero de todas formas agradezco mucho vuestra ayuda.
por cierto es una aplicacion destinada a personas que apenas empiezan a manejar un pc y ni siquiera saben cambiar el fondo del escritorio, el programa en si le muetsra una vista previa de la imagen en cuestion que elijen y la cambia el mismo, se que para muchos es mas sencillo cambiarla directamente con el mousse pero como he dicho antes esta destinado a personas que empiezan y ademas le añadi unas cuantas imagenes que he ido recopilando y me parecian bonitas ademas de servirme para practicar y aprender un poco mas sobre este maravilloso mundo de la programacion.
pd:
en cuanto sepa si se puede postear el programa lo hago y os dejo aqui un enlace
nuevamente gracias a todos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: seba123neo en 26 Julio 2009, 03:14 am
pues en esta sección , si queres postear un programa debes poner si o si el source...sino va en la de software...

saludos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: pedraosone en 26 Julio 2009, 03:20 am
gracias sebas pero me surge dos dudas amigo:
el source lo posteo en este mismo hilo (solo el proyecto) y el programa compilado en la sección de software
nuevaente gracias a todos.


Título: Re: se podria convertir una imagen jpg en bmp desde vbasic (solucionado)
Publicado por: seba123neo en 26 Julio 2009, 05:41 am
crea un tema nuevo para postear el proyecto...sino fijate como hacen todos cuando postean un programa.

si posteas el source aca, no hace falta el compilado en la de software...yo te decia por las dudas no querias postear el source, entonces la unica que te queda si queres que vean el programa es postear el .exe en la sección de software...

saludos.