[Resolu] [SDL] taille d'une image en px

taille d'une image en px [Resolu] [SDL] - C - Programmation

Marsh Posté le 28-06-2006 à 12:13:19    

Salut;
 
je suis  on ce moment entrain d'apprendre a utiliser la librairie SDL, ( en utilisant le langage C ), sous Windows, et j'aimerais s'il vous plais savoir comment on peut trouvé la taille en pixel d'une image charger on mémoire.
 
Merci.


Message édité par big_dadi_fat le 29-06-2006 à 13:50:41
Reply

Marsh Posté le 28-06-2006 à 12:13:19   

Reply

Marsh Posté le 28-06-2006 à 12:16:33    

si tu loades une image avec sdl_image dans une sdl_surface, t'as w et h pour la largeur et la hauteur de la surface dans la struct sdl_surface me semble-t'il

Reply

Marsh Posté le 28-06-2006 à 12:42:15    

_darkalt3_ a écrit :

si tu loades une image avec sdl_image dans une sdl_surface, t'as w et h pour la largeur et la hauteur de la surface dans la struct sdl_surface me semble-t'il


 
Donc si on veut centrer notre img, on declare par exemple :  
SDL_Surface *img=NULL, *ecran=NULL;                  
SDL_Rect position;
 
et pour centrer on fais:    
/*apré le chargement de l'image et l'ecran ...etc*/
position.x = (encran->w) / 2      -      (img->w)/2;
position.y = (encran->h) / 2      -      (img->h)/2;
 
 
alors c'est comca ?
 
si oui, alors : esque ca marche qu'avec SDL_image ?      sinon coment on fais pour conaitre la taille d'une img loader avec SDL_LoadBMP ?
 
encor merci :p  
 

Reply

Marsh Posté le 28-06-2006 à 14:16:45    

- orthographe :fou:
- j'ai déjà répondu à ta question sur la taille d'une surface sdl; de plus , c'est écrit dans la doc.

Reply

Marsh Posté le 28-06-2006 à 16:08:57    

_darkalt3_ a écrit :

- orthographe :fou:
- j'ai déjà répondu à ta question sur la taille d'une surface sdl; de plus , c'est écrit dans la doc.


 
 
vous avez dit que

Citation :

si tu loades une image avec sdl_image dans une sdl_surface, t'as w et h pour la largeur et la hauteur


mais si je n'utilise pas sdl_image, (càd: si je load avec: SDL_LoadBMP =>(existe dans sdl sans utilisation de sdl_image))
 
 
désolé pour l'orthographe j'essaye de faire de mon mieu   :sweat: .
 

Reply

Marsh Posté le 28-06-2006 à 16:20:34    

c'est pareil, SDL_LoadBMP renvoie un pointeur sur sdl_surface.
 
Du coup interroge ta sdl_surface pour connaitre les carac de taille de bitmap loadé...
 
(enfin ,je crois)

Reply

Marsh Posté le 28-06-2006 à 16:22:33    

Code :
  1. SDL_Surface *SDL_LoadBMP(const char *file) ;


SDL_LoadBMP renvoit une SDL_Surface, comme IMG_Load de SDL_image.
_darkalt3_ te fait remarquer que SDL_Surface est une structure qui contient les champs que tu recherches (w et h) :

Code :
  1. typedef struct SDL_Surface {
  2.                Uint32 flags;                           /* Read-only */
  3.                SDL_PixelFormat *format;                /* Read-only */
  4.                int w, h;                               /* Read-only */
  5.                Uint16 pitch;                           /* Read-only */
  6.                void *pixels;                           /* Read-write */
  7.                /* clipping information */
  8.                SDL_Rect clip_rect;                     /* Read-only */
  9.                /* Reference count -- used when freeing surface */
  10.                int refcount;                           /* Read-mostly */
  11.             /* This structure also contains private fields not shown here */
  12.        } SDL_Surface;


C'est effectivement dans la documentation =)
 
Bon courage !
 
Edit : [:grilled]


Message édité par Evadream -jbd- le 28-06-2006 à 16:23:27
Reply

Marsh Posté le 28-06-2006 à 16:33:57    

On est pas trop de deux [:god]

Reply

Marsh Posté le 29-06-2006 à 13:50:05    

_darkalt3_ a écrit :

On est pas trop de deux [:god]


 
Meci à tout les deux, je suis désolé pour le dérangement.
je suis alergique au documentations  :sweat:  =>
 :lol: non je plaisante, je vais voire ça de suite;
 
encor merci
 
 
 :hello:

Reply

Marsh Posté le 29-06-2006 à 14:01:25    

_darkalt3_ a écrit :

On est pas trop de deux [:god]


Uhu =)
 
Il faut tout de même avouer que la documentation de SDL n'est pas un modèle du genre... Mais il y a pas mal de tutoriaux sur le net, et les sources de SDL contiennent un répertoire tests avec des exemples. C'est comme ça que j'ai appris et que je continue d'apprendre d'ailleurs !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed