• Martes 14 de Mayo de 2024, 20:38

Autor Tema:  Re: Sacar un listado por impresora??  (Leído 1734 veces)

El_Ruben

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Sacar un listado por impresora??
« en: Lunes 16 de Septiembre de 2002, 23:42 »
0
Como notareis...soy novato en esto de programar y aparte mi profesor no enseña muy bien:P
No se como imprimir documentos. Necesito listar datos q saco d un archivo en pantalla y dar la opcion d imprimirlos en papel. Como se maneja la impresora? Es con alguna variante del printf o se utiliza como si fuera un archivo? Estoy mu perdidooo:(

Santana

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Sacar un listado por impresora??
« Respuesta #1 en: Miércoles 6 de Noviembre de 2002, 01:12 »
0

Santana

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Sacar un listado por impresora??
« Respuesta #2 en: Miércoles 6 de Noviembre de 2002, 01:18 »
0
pues creo que tu profe debe ser el mío, por las características comunes....jejeje.
Bueno, si he entendido bien la pregunta, quieres saber qué función direcciona la salida a impresora, es la fpintf, sus caracteristicas son identicas al printf y la sintaxis sería fprintf(stdprn, cadena de control, lista de argumentos); stdprn es el dispositivo estándar impresora, stdin sería el teclado, stdout la pantalla. Espero haberte ayudado. Un saludo.

wimogan

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
Sacar un listado por impresora??
« Respuesta #3 en: Viernes 29 de Noviembre de 2002, 22:30 »
0
ok, ahi te envio un pequeño codigo de como sacar archivos o un documento por la impresora en lenguaje C para Linux:

#include <stdio.h>

main ()
{

      FILE *ar;
      char v[80];
      int i=0,k,p=1;

      while (p)
      {
           i=0;
           while (((v=getchar())!=10)&&(i<80))
           {
                p=v;
               if (p<0) p=0; else p=1;
               i++;
           }

       if (i>0)
       {
             ar=fopen("/dev/lp0","rw+");

             for (k=1;k<i;k++)
             fprintf(ar,"%c",v[k]);
             fprintf(ar,"n");
             fclose(ar);
       }

   }

}

Este codigo te lo diseñe un poco rapido, porque me tengo que ir para la Uni, cualquier error me avisas.

Compilalo y para enviar a imprimir, ejecutas:

cat "nombre del archivo a imprimir"       | "nombre del programa compilado"

Ejemplo:

cat /etc/wvdial.conf | /programas/impresion