oRTEEZ
Messages postés81Date d'inscriptionvendredi 18 juillet 2003StatutMembreDernière intervention10 septembre 2003
-
1 août 2003 à 15:51
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
1 août 2003 à 16:53
Bonjour, bonsoir,
Voila mon souci, je dois faire un programme qui doit accepte un entre divers formats d'images. Puis dessiner dessus un rectangle, puis ecrire un texte dont la position et le contenu seront determiner par l'utilisateur.
J'ai pour cela une librairie qui s'occupe des conversion entre format et qui possede une classe gerant l'image et contenenant, le nom, la taille, le format de l'image, des pixels et une variable byte *rgb (byte est un #define unsigned char)
j'ai cette ligne
rgb = (byte*)new long[(RowSize() * y) / 4];
avec:
int SpImage ::RowSize()
{
int n = x * pix_size/8;
while(n%4) n++ ;
return n;
}
pix_size: taille du pixel (8 24 ou 32)
je ne comprend pas vraiment ce que fait cette ligne. Se contente telle de reserver un espace memoire pour l'image vu qu'apres jai:
if (rgb) memset (rgb, 0, y * RowSize());
Ou alors ai je mon image dans rgb.
Si oui comment faire pour tracer un trai sur cette image?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 1 août 2003 à 16:53
ici je ne vois que la ligne d'alloc memoire par operateur new, ensuite une func qui aligne les donnees sur 4, tres bien, et le memset final. Faudra que tu vois ce qui sera place dans ton alloc memoire pointee en *rgb, je ne suis pas devin.
BruNews, ciao...