Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-09-2014
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por FabianSiza Ver Mensaje
Gracias.
Por favor, crea un nuevo hilo con tu consulta, no repitas lo mismo en distintos hilos si no es para responder o aportar algo al hilo existente. Gracias
Responder Con Cita
  #2  
Antiguo 23-09-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 14
aguml Va por buen camino
solo un detalle y que me corrijan si me equivoco. StretchDraw hacia que la imagen perdiera mucha calidad y en su momento, cuando yo me interesé por ese tema, me indicaron otro metodo usando las apis de windows pero ahora mismo no recuerdo como era y tendria que buscar el codigo.
Responder Con Cita
  #3  
Antiguo 24-09-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 14
aguml Va por buen camino
StretchDraw tenia un problema, restaba mucha calidad a las imagenes. En su tiempo, cuando yo me interesé por el tema, me ayudaron a hacerlo de otra forma. Os pongo un enlace con la prueba que hice donde, ademas de poder redimensionarla, tambien se puede exportar a jpg y ademas se puede arrastrar la imagen en el TImage para desplazarnos por ella sin necesidad de scrollbars. Espero que te sirva.

Enlace: https://mega.co.nz/#!NhNBXbKK!mkkwV4...EBErPlElWT0DY8

Última edición por aguml fecha: 24-09-2014 a las 14:15:47.
Responder Con Cita
  #4  
Antiguo 24-09-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 14
aguml Va por buen camino
una cosa mas, creo recordar que el objeto TJPEJImage tiene una funcion para redimensionar el jpg (creo que era resize o algo asi) pero ya para para hacerlo por tamaño en bytes no se.
Responder Con Cita
  #5  
Antiguo 24-09-2014
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Ya que se reabre este tema, voy a aportar una solución usando GDI+ que no tiene el inconveniente de la pérdida de calidad clásica de Stretch y usa HBITMAP con lo que se puede usar con cualquier formato de compresión. Podéis ver el código en C y delphi en este enlace: Redimensionar una imagen con GDI+ flat API.

Saludos.
Responder Con Cita
  #6  
Antiguo 24-09-2014
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Gracias por compartirlo
Responder Con Cita
  #7  
Antiguo 24-09-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 14
aguml Va por buen camino
muy interesante el aporte. Hace mucho tiempo usé gdi+ para capturar parte de un form y guardarlo en bmp y me fue imposible porque tenia que capturar la imagen de un componente de visual basic y no se porque me creaba la imagen vacia. Como digo, me volvi loco y no lo consegui. A ver si mañana pruevo tu codigo a ver si me funciona. Una pregunta ¿Tu metodo da mas calidad que el que yo he mandado? Otra cosa, dices que hay que inicializar el gdi+ y finalizarlo al terminar ¿Como haces eso? Y por ultimo ¿No seria mejor crear una clase para hacer mas facil su uso con los metodos de inicializar, dibujar, redimensionar, y destruir?
Responder Con Cita
  #8  
Antiguo 25-09-2014
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Cita:
Empezado por aguml Ver Mensaje
¿Tu metodo da mas calidad que el que yo he mandado?
GDI+ es una mejora sustancial de GDI, es muy posible que las últimas versiones de delphi y builder trabajen con él.

Cita:
Empezado por aguml Ver Mensaje
dices que hay que inicializar el gdi+ y finalizarlo al terminar ¿Como haces eso?
Código:
// Inicializar GDI+.
__int64 gdiplusStartupInput[3];
ULONG_PTR  gdiplusToken;
gdiplusStartupInput[0] = 1; gdiplusStartupInput[1] = 0;
 
// Cerrar GDI+
GdiplusShutdown(gdiplusToken);
Cita:
Empezado por aguml Ver Mensaje
¿No seria mejor crear una clase para hacer mas facil su uso con los metodos de inicializar, dibujar, redimensionar, y destruir?
De hecho Microsoft tiene estructurado GDI+ en una librería de clases basada en la API GDI+. Yo usé la API básica para compatibililizar el uso del código con los compiladores Builder y delphi más antiguos. Algunos ejemplos que publiqué en delphiaccess usan la API básica y otros la librería de clases GDI+ para C++.


Saludos.

Última edición por escafandra fecha: 25-09-2014 a las 02:34:58.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Cómo cambiar tamaño una imagen después de cargarla? Master23 Varios 4 03-08-2010 18:37:58
¿Como cambiar el tamaño a una imagen? flystar Varios 1 22-04-2010 19:23:51
como saber y cambiar el tamaño a una imagen Negriz C++ Builder 10 09-06-2008 00:00:21
Cambiar tamaño de una imagen antes de guardar en una bd chux Gráficos 6 28-11-2006 11:58:58
Cambiar el tamaño de una imagen inter_mercadeo Gráficos 2 25-02-2005 17:43:54


La franja horaria es GMT +2. Ahora son las 17:28:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi