[ Foro de Pascal ]

Caracteres ASCII extendidos por pantalla

16-Jul-2020 18:24
Invitado (Free Pascal)
2 Respuestas

Buenos días:
Agradezco su ayuda.
¿Cómo puedo hacer para mostrar por pantalla caracteres ASCII extendidos, como los usados para dibujar un marco de ventana?
Estoy trabajando con Free Pascal 3.0.4 bajo Windows 7.
En la consola de Windows, 'chcp' me arroja 850. He intentado cambiarlo con  'chcp 437'.
En el programa he intentado con 'uses cp437 y uses cpall'; también {$CODEPAGE UTF8}, sin éxito.

El programa es el siguiente:
----------------------------
program frame;
{$CODEPAGE UTF-8}
uses  crt,  cpall;
var  i:byte;

begin
 clrscr;
 GotoXY(10,10);write(chr(218));          //  Sup izq    
 for i:=11 to 19 do write(chr(196));     //  Horizontal
 write(chr(191));                                         // Sup der    

 for i:=11 to 14 do
 begin
   GotoXY(10,i);write(chr(179));            //  Verticales
   GotoXY(20,i);write(chr(179));
 end;

 GotoXY(10,15);write(chr(192));           //  Inf izq
 for i:=11 to 19 do write(chr(196));      //  Horizontal
 write(chr(217));                                         //  Inf der

 writeln;
 writeln('Presione ENTER');readln;
end.
--------------------


16-Jul-2020 18:45
Nacho Cabanes (+84)

En general, no podrás. El juego de caracteres de Windows es diferente. Por mucho que te diga que estás con una cierta página de códigos, la consola de Windows no se comportará como esperarías en MS-DOS.


17-Jul-2020 22:58
Invitado (Free Pascal)

Estimado amigo:

Muchas gracias por la respuesta, pero... ¿así de crudo? ¿No se puede?

Trabajé hace muchos años con Turbo Pascal (hasta TP 5.0 bajo MS-DOS) y luego la vida me llevó por otros derroteros...
Desde el punto de vista didáctico y de buenas prácticas de programación, escogí Pascal para enseñar a programar a mi hijo; ello me llevó a investigar y descubir el Free Pascal, así como tus tutoriales. Muy buenos, te felicito...
Encontré un viejo ejecutable hecho en Turbo Pascal, el cual dibuja correctamente un marco de ventana, aún bajo Windows (lamentablemente no tengo el fuente) y pensé que Free Pascal podría hacerlo.

¿Sabes si esta misma limitación existe trabajando bajo Linux?
De antemano, muchas gracias por el tiempo dedicado.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)