PDA

Ver la Versión Completa : Problema con jpg. No carga bien en TImage


rolandoj
03-04-2013, 06:32:30
Hola a todos,

Tengo un problema con un grupo de imagenes jpg que me enviaron.

Si las abró por ejemplo con el Visor de imágenes y fax de Windows, o con MS-Paint, se ven bien.

Si trato de cargarlas a la propiedad Picture de un TImage, el cuadro de diálogo de imágenes de Windows las muestra mal; pero, si las carga al TImage. Cuando las carga, se ven muy mal (literalmente irreconocibles).

Vale anotar que Internet Explorer ni siquiera las abre (Y está bien porque otros JPG si los abre bién)

Porqué pasa esto ?. Otras imágenes JPG se cargan bien en el TImage.

Es que JPG es realmente una familia de formatos ?. TImage solo soporta algunos ?. Se puede hacer algo para cargarlos en TImage o será necesario buscar otro componente ?.

Vale anotar que intenté pasándolas a BMP y ahí si las carga bien; pero, el tamaño del archivo ejecutable crece exponencialmente porque el tamaño del BMP es enorme frente al JPG.

Agradezco cualquier ayuda

ecfisa
03-04-2013, 09:54:55
Hola rolandoj.

Probablemente que las imágenes que te dan problemas estén codificadas con el modelo de color CMYK (http://es.wikipedia.org/wiki/Modelo_de_color_CMYK). Delphi, al iguál que otros programas, suelen tener problemas con él.

Una alternativa es guardarlas cambiando el modelo a RGB (http://es.wikipedia.org/wiki/RGB) y otra este upload de embarcadero: ID: 19723, Enhanced jpeg implementation (http://cc.embarcadero.com/item/19723).

Saludos.

newtron
03-04-2013, 09:55:08
Hola.

Una cosa que se me ocurre es que la imagen tenga muy poca resolución y la estés presentando demasiado grande, ¿es posible?.

Saludos

rolandoj
03-04-2013, 15:19:40
Hola a ambos,

El problema no es de baja resolución; al contrario, la resolución es alta.

Creo que es probable que sea lo que dice ecfisa. Voy a pedir que me la envién con RGB y si es del caso intentar con el upload de Embarcadero (por el momento intento primero la conversión porque el upload es de 1.4 MB y no quiero seguir aumentando tamaño al ejecutable)

Les estaré contando.

Muchos saludos

newtron
03-04-2013, 17:29:07
Creo que es probable que sea lo que dice ecfisa.

Si si.... este ecfisa ahora que tiene un papa paisano está subidillo. :p

rolandoj
10-04-2013, 07:00:50
Hola,

Resultó que las imágenes ya estaban en RGB; así que ese no es el problema.

Accidentalmente descubrí una solución :

Si paso la imagen a BMP, y luego la regreso a JPG con MS-Paint la imagen ya queda bien.

No se por qué pasa eso; pero, sospecho que es por la larga lista de opciones de conversión que hay para gráficos. Por lo que he podido apreciar, como hay muchas parece que los programas que hacen estas eligen a menudo varias por default y supongo que no todos emplean las mismas.

Creo que el programa donde las crearon colocó una o más opciones opciones incompatibles con el TImage de Delphi; pero MS-Paint al convertir corrigió eso

Chris
10-04-2013, 21:34:21
Hola!

Revisa que la extención del archivo sea la correcta. Delphi utiliza la extención del archivo para determinar el decodificador de imagen a utilizar. Si la extención no coincide con el código interno de la imagen entonces no te la cargará. Por ejemplo, puede que cuando hallan creado el archivo le hallan puesto una extensión .jpg cuando en realidad es un .png. Eso explicaría porque una vez hecha la conversión ¿JPG? -> BMP -> JPG funcione.

Saludos!

rolandoj
10-04-2013, 22:04:50
Hola Chris,

Gracias por la idea. Podría ser. La persona que me los ha enviado en algún momento estuvo probando diversos formatos. Es posible que en algún momentos se haya confundido y haya guardado como jpg algo que en realidad estaba en otro formato.

Muchos saludos