graphics.h


Función imagesize Borland® C

unsigned far imagesize(int izquierda, int superior,
   int derecha, int inferior);

Esta función es usada para determinar el tamaño del búfer necesitado para almacenar una imagen con la función getimage. Los argumentos izquierda y superior definen las coordenadas x e y de la esquina superior izquierda de la imagen rectangular. Similarmente, los argumentos derecha y inferior definen las coordenadas x e y de la esquina inferior derecha de la imagen rectangular.

Valor de retorno:

La función imagesize retorna el número actual de bytes necesarios si el tamaño requerido es menor que 64 Kb menos 1 byte. Si esto no es el caso, el valor retornado es 0xFFFF, ó -1.

Ejemplo:

#include <graphics.h>
#include <conio.h>
#include <stdlib.h>

int main() {
   int gdriver = EGA;
   int gmodo = EGAHI;
   void *imagen;
   int imagentam;

/* Si has registrado los dispositivos para que formen parte de graphics.lib
** entonces usa estas sentencias:

   registerbgidriver( EGAVGA_driver );
   initgraph( &gdriver, &gmodo, "" );
*/

/* Si no, entonces has de "decir" dónde se encuentra el dispositivo gráfico */

   initgraph( &gdriver, &gmodo, "C:\\BC5\\BGI" );

   setfillstyle( SLASH_FILL, 5 );
   bar( 50, 50, 350, 300 );

   imagentam = imagesize( 50, 50, 100, 100 );
   imagen = malloc( imagentam );
   getimage( 50, 50, 100, 100, imagen );

   putimage( 400, 50, imagen, COPY_PUT );
   putimage( 400, 110, imagen, COPY_PUT );

   getch();    /* Pausa */
   closegraph();

   free( imagen );

   return 0;
}