Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/10/2009, 20:55
Avatar de ngaviria
ngaviria
 
Fecha de Ingreso: julio-2003
Ubicación: Dosquebradas, Risaralda
Mensajes: 18
Antigüedad: 21 años, 9 meses
Puntos: 0
Información Adicionar Salto de pagina a una impresora VisionFS

Bueno, tal vez este tema no sera muy popular, pero tal vez alguien mas este buscando esta informacion y le pueda ser util.

Tengo instalado Unix SCO openserver 5.0.5 con VisionFS 3.1


El tema es que cuando se envia una impresion desde un sistema Unix con VisionFS (en mi caso SCO Openserver enterprise 5.0.x) a una impresora esclava de un equipo en Windows esta no hace el salto de pagina, es decir, que si la impresion termino en la linea 21 alli se queda la impresora y no se parquea en la proxima hoja para esperar la siguiente impresion.

Debido a esto modifique el archivo de interface.

Parte del archivo original donde envia la impresion:

Código:
for i in $c_files; do
  # attempt to print the file
  c_output="`$c_printprog print //$c_servername/$c_sharename $i $c_args 2>&1`"

  if [ "$?" != "0" ]; then
    echo "Failed to print job sent to printer - $c_printer (`date`):" | tee 1>&2 -a $lplog
    echo $c_printprog print //$c_servername/$c_sharename $i $c_args | tee 1>&2 -a $lplog
    echo "$c_output" | tee 1>&2 -a $lplog
    exit 1
  fi
done
Lo he modificado asi:


Código:
for i in $c_files; do


  ############################################################
  # attempt to add formfeed at the end of file to print
        echo "^L" >>$i
  ############################################################


  # attempt to print the file
  c_output="`$c_printprog print //$c_servername/$c_sharename $i $c_args 2>&1`"


  ############################################################
  # attempt eliminate the FF added previously
        sed '/[^L]/d' <$i >$i.tmp
        mv $i.tmp $i
  ############################################################


  if [ "$?" != "0" ]; then
    echo "Failed to print job sent to printer - $c_printer (`date`):" | tee 1>&2 -a $lplog
    echo $c_printprog print //$c_servername/$c_sharename $i $c_args | tee 1>&2 -a $lplog
    echo "$c_output" | tee 1>&2 -a $lplog
    exit 1
  fi
done
La idea es que el comando:

echo "^L" >>$i

adiciona el salto de pagina al final del archivo que se va a imprimir.


...y los comandos:

sed '/[^L]/d' <$i >$i.tmp
mv $i.tmp $i


Eliminan este salto de pagina del archivo que se envio a imprimir.


Bueno... pues espero que a alguien le sirva este Post.



PD: Descargalo de aqui el archivo de interfase ya modificado, y copialo en /usr/vision/visionfs/_inst/ con el nombre model. Reemplaza el original.


hºtºtºpº:º/º/cid-8c8de4946bdb97f4.skydrive.live.com/embedicon.aspx/P%c3%bablico/interfase^_vfs31

(Copialo y pegalo en tu navegador, borra los "º" que por motivos de restriccion en Forosdelweb no me dejan colocar el Link)