• Sábado 4 de Mayo de 2024, 19:01

Autor Tema:  Obtener Las Dimensiones De Una Imagen  (Leído 2131 veces)

cqbotester

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Obtener Las Dimensiones De Una Imagen
« en: Lunes 4 de Diciembre de 2006, 21:44 »
0
Hola a todos, tengo la siguiente duda y espero puedan ayudarme.

Estoy utilizando C# y Directx SDK 9. Al momento de cargar una textura en memoria a partir de un archivo (un PNG) me gustaría saber las dimensiones del archivo de imagen. Por ejemplo si tengo un png de 600x200 me gustaría obtener esos numeros en tiempo de ejecución. Leyendo un e-book por ahí pensé que el siguiente código solucionaba el problema:

Código: Text
  1. // Crear la textura
  2. spriteTexture = TextureLoader.FromFile(device, @"..\..\logo.png");
  3.  
  4. using (Surface s = spriteTexture.GetSurfaceLevel(0))
  5. {
  6.     SurfaceDescription desc = s.Description;
  7.     textureSize = new Rectangle(0, 0, desc.Width, desc.Height);
  8. }
  9.  
  10.  

Me imaginaba que obteniendo una descripción de la textura y luego sus dimensiones estaba listo. Pero me dan otras dimensiones que no concuerdan con las del archivo por lo que al parecer no era por ahí la solución.

Ojalá alguien me ayudara, lo más probable es que exista una property que no he revisado. Desde ya muchas gracias.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Obtener Las Dimensiones De Una Imagen
« Respuesta #1 en: Miércoles 6 de Diciembre de 2006, 13:47 »
0
En teoria estas tienen que ser.

desc.Width, desc.Height
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

HalfVector

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Obtener Las Dimensiones De Una Imagen
« Respuesta #2 en: Sábado 23 de Diciembre de 2006, 17:29 »
0
Cita de: "cqbotester"
Me imaginaba que obteniendo una descripción de la textura y luego sus dimensiones estaba listo. Pero me dan otras dimensiones que no concuerdan con las del archivo por lo que al parecer no era por ahí la solución.
Hola.

¿Qué dimensiones te devuelve el descriptor de la textura?. Es posible que tu tarjeta no soporte texturas no potencia de dos y te la esté redimensionando automáticamente a la potencia de dos más próxima.

Saludos.