conio.h


Función gettext Borland® C

int gettext(int izquierda, int superior, int derecha,
   int inferior, void *destino);

Guarda el contenido en un rectángulo de texto en pantalla definido por los argumentos izquierda y superior, que describen la esquina superior izquierda y por los argumentos derecha e inferior, que describen la esquina inferior derecha, en el área de memoria apuntada por el argumento destino. Todas las coordenadas son coordenadas absolutas de pantalla; no son relativas a la ventana. La esquina superior izquierda es (1,1). La función gettext lee el contenido en este rectángulo en memoria secuencialmente de izquierda a derecha y de arriba a abajo. Cada posición en pantalla necesita 2 bytes de memoria. El primer byte es el carácter en la celda y el segundo es el atributo de vídeo de la celda. El espacio requerido para un rectángulo b columnas anchas y h filas altas está definida como:
bytes = (h filas) x (w anchas) x 2.

Valor de retorno:

La función gettext retorna 1 si la operación tiene éxito. Si ocurre un error, como es el caso de acceder fuera de la pantalla, entonces retorna el valor de 0.

Ejemplo:

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

#define ANCHURA 15
#define ALTURA 5

int main() {
   void *destino;

   destino = malloc( ALTURA*ANCHURA*2 );
   clrscr();
   cprintf( "Ejemplo de \"gettext\" y \"puttext\"\r\n\r\n" ); 
   cprintf( "El rectángulo será de un área relativamente pequeña.\r\n" );
   cprintf( "Las dimensiones son: %d (de ancho) x %d (de alto).\r\n", 
      ANCHURA, ALTURA );
   cprintf( "Pulsa una tecla para continuar..." );
   getch();

   cprintf( "\"gettext\" ha retornado: %d\r\n", 
      gettext( 1, 1, 1+ANCHURA, 1+ALTURA, destino ) );
   cprintf( "Mostremos lo que hay guardado en memoria:" );
   puttext( 1, 9, 1+ANCHURA, 9+ALTURA, destino );
   getch();
   clrscr();

   free( destino );

   return 0;
}