Re: magicfilterconfig --force para una Stylus Color 200
Roberto Leon Lopez escribe:
> No consigo configurar en condiciones mi Stylus color 200, de los
> filtro que me muestra filterconfig no se cual es el adecuado, hay
> algunos que se acercan.
Desacte de magicfilter (opcional).
Este filtro te servirá, create el directorio epson /var/spool/lpd/, y
dale los permisos adecuados:
chmod 775 epson
chown root.lp epson
copia el filtro en el directorio epson, llamalo filtro.
chmod 775 filtro
chown root.lp filtro
*************************** filtro ********************************************
#!/bin/sh
#
# Filtro general de impresión.
#
#
# INICIO DE OPCIONES
#
# Generales
if [ -f /etc/papersize ]; then
PAPEL=`cat /etc/papersize`
else
PAPEL="a4"
fi
# Para Ghostscript
INTERFASE_GS=stcolor # Tipo de impresora (Driver)
RESOLUCION=360x360
OPCIONES_GS="-dupOutputFormat=/EscP2 -dUnidirectional"
# Para mpage
MARGEN_IZQ=30 #(Left)
MARGEN_DER=30 #(Right)
MARGEN_SUP=35 #(Top)
MARGEN_INF=30 #(Botom)
#
# FIN DE OPCIONES
#
#
# Filtraje
#
tipo_datos=`echo $(file -) | tr 'A-Z' 'a-z'`
/var/spool/lpd/epson/inicio
# Tipo de compresión
case $tipo_datos in
*gzip* )
com_desc="gzip -dc";;
*bzip2* )
com_desc="bzip2 -dc";;
* )
com_desc="" ;;
esac
if [ ! -z "$com_desc" ]; then
tipo_datos=`$com_desc - | file - | tr 'A-Z' 'a-z'`
comando_final="$com_desc | "
fi
/var/spool/lpd/epson/inicio
# Comando para imprimir en PostScript
comando_gs="gs -q -sDEVICE=$INTERFASE_GS \
-r$RESOLUCION \
-sPAPERSIZE=$PAPEL \
-dNOPAUSE \
-dSAFER \
$OPCIONES_GS \
-sOutputFile=- -"
# Actuamos en función del tipo de datos de entrada
case $tipo_datos in
*postscript* )
com_tipo=$comando_gs ;;
*dvi* )
com_tipo="/usr/bin/dvips -D 360 -R -q -f | $comando_gs" ;;
*pdf* )
com_tipo="pdf2ps /dev/stdin /dev/stdout | $comando_gs" ;;
*ascii*|*text*|*script* )
# Es texto plano
# Lo imprimimos en PostScript
com_tipo="mpage -b $PAPEL -o -1 -m${MARGEN_IZQ}l \
-m${MARGEN_DER}r \
-m${MARGEN_SUP}t \
-m${MARGEN_INF}b | $comando_gs" ;;
* )
echo "No impreso, tipo desconocido."
exit 1 ;;
esac
comando_final=$comando_final$com_tipo
eval $comando_final 2> /dev/null
#printf "\014"
exit 0
*************************** Fin filtro ****************************************
Compila el siguiente archivo
gcc inicio.c -o inicio
********************** inicio.c ***********************************************
#include <stdio.h>
int main()
{
lseek(0, 0L, SEEK_SET);
}
********************* Fin inicio.c ********************************************
y copia el ejecutable resultante en /var/spool/lpd/epson/, dándole los
permisos
chmod 755 inicio
chown root.lp inicio
Escribe la línea
if=/var/spool/lpd/epson/filtro
en tu fichero /etc/printcap para usar el filtro
/etc/init.d/lpd restart
y listo
Feliz Navidad.
--
agr@lab.inf.uc3m.es
agr1@arrakis.es
Reply to: