FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Tamaño de una imagen
Me gustaría saber cómo cambiar el tamaño (manteniendo la proporción o no) de una imagen (jpg, gif, bmp...) guardada en disco.
También me gustaría saber si es posible abrir o previsualizar un .PSD (archivo de photoshop). Gracias y un saludo |
#2
|
|||
|
|||
No tengo una respuesta exacta, pero quizás te pueda ayudar visitar esta web:
http://homepages.borland.com/efg2lab...Processing.htm Que tiene variada información, así como ejemplos en código fuente, sobre procesado de imágenes. En cuanto a lo de los archivos Photoshop desde VB había manera de abrirlos, calculo que delphi no se debe quedar atrás.
__________________
Suerte .: Gydba :. |
#3
|
||||
|
||||
Te recomiendo buscar información sobre el método StretchDraw del TCanvas, o funciones como StretchBlt...
Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#4
|
|||
|
|||
yo lo hago asi:
Bitmap1 := TBitmap.Create; Bitmap2 := TBitmap.Create; try Bitmap1.LoadFromFile('c:\imagen.bmp'); Bitmap2.PixelFormat := Bitmap1.PixelFormat; Bitmap2.Width := 200; // nuevo tamaño Bitmap2.Height := 200; Bitmap2.Canvas.StretchDraw(0, 0, Bitmap2.Width, Bitmap2.Height, Bitmap1); Bitmap2.SaveToFile('c:\imagencambiada.bmp'); finally Bitmap2.Free; Bitmap1.Free; end; y si es un jpg: JPG := TJPEGImage.Create; Bitmap := TBitmap.Create; try JPG.LoadFromFile('c:\imagen.jpg'); Bitmap.PixelFormat := pf24Bit; Bitmap.Width := 200; // nuevo tamaño Bitmap.Height := 200; Bitmap.Canvas.StretchDraw(0, 0, Bitmap.Width, Bitmap.Height, JPG); JPG.Assign(Bitmap); JPG.SaveToFile('c:\imagencambiada.jpg'); finally Bitmap.Free; JPG.Free; end; lo hago asi porque no puedes acceder directamente al canvas de un jpegimage, pero si que puedes hacerlo con un bitmap, y luego con el assign lo conviertes a jpg. para usar el tjpegimage añade la unit JPEG al uses. espero que te sirva, bueno, que te funcione, pq lo he escrito de memoria |
#5
|
|||
|
|||
Cita:
|
#6
|
||||
|
||||
Cita:
¿Tienes la dcu en $(delphi)\Lib? Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#7
|
||||
|
||||
Recién ahora me doy cuenta que posteaste esto en otro hilo aclarando que se trata de Delphi 8. Te recomiendo no repetir las preguntas en hilos diferentes, te respondo en el otro.
http://www.clubdelphi.com/foros/showthread.php?t=7539
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#8
|
|||
|
|||
Sigo Vivo
Aunque este hilo ya tiene algun tiempo, les doy las gracias porque estaba a punto de tirarme del edificio cuando encontre aqui la respuesta que andaba buscando(eso de tirarme es broma), necesitaba desplegar un jpeg en un drawgrid y si lo desplegaba pero de un tamaño mas grande que el tamaño de las celdas de mi DrawGrid y lo solucione con eso del StretchDraw del TCanvas
son unos genios. Y coincido con ustedes: "Antes de preguntar hay que buscar" Un Hermano Mexicano los Saluda |
#9
|
||||
|
||||
Gracias, El_perrito, por tu buen ejemplo.
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|