URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 19529
[ Назад ]

Исходное сообщение
"Печать на НР4plus во FreeBSD (вроде печатает но лесенкой)"

Отправлено Vladimir , 09-Авг-02 12:55 
Использую этот скрипт как написано в HandBooke
но в результате печатет все равно лесенку, может кто подскажет решение
(не думаю что никто не использует FreeBSD с лазерными принтерами :)


#!/bin/sh
    
    printf "\033&k2G" || exit 2
      
    read first_line
    first_two_chars=`expr "$first_line" : '\(..\)'`
  
    if [ "$first_two_chars" = "%!" ]; then
        
        exec 3>&1 1>&2
        /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=laserjet \
            -sOutputFile=/dev/fd/3 - && exit 0
  
        /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=laserjet \
            -sOutputFile=- - && exit 0
    else
        
        echo $first_line && cat && printf "\033&l0H" &&
    exit 0
    fi
  
    exit 2


Содержание

Сообщения в этом обсуждении
"RE: Печать на НР4plus во FreeBSD (вроде печатает но лесенкой)"
Отправлено lavr , 09-Авг-02 13:21 
>Использую этот скрипт как написано в HandBooke
>но в результате печатет все равно лесенку, может кто подскажет решение
>(не думаю что никто не использует FreeBSD с лазерными принтерами :)
>
>
>#!/bin/sh
>
>    printf "\033&k2G" || exit 2
>
>    read first_line
>    first_two_chars=`expr "$first_line" : '\(..\)'`
>
>    if [ "$first_two_chars" = "%!" ]; then
>
>        exec 3>&1 1>&2
>        /usr/local/bin/gs -dSAFER -dNOPAUSE -q
>-sDEVICE=laserjet \
>            
>-sOutputFile=/dev/fd/3 - && exit 0
>
>        /usr/local/bin/gs -dSAFER -dNOPAUSE -q
>-sDEVICE=laserjet \
>            
>-sOutputFile=- - && exit 0
>    else
>
>        echo $first_line && cat
>&& printf "\033&l0H" &&
>    exit 0
>    fi
>
>    exit 2

http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/pr... - там все ясно расписано:

принтеры по разному воспринимают и отрабатывают завершение строки,
в Unix это один символ - LF (CR отсутствует как класс), в MSDOS  это
два символа LF + CR (line feed + carriage return)

Либо посмотреть настройки принтера как у него установлена обработка
новой строки и поменять ее, либо использовать в фильтре дополнительный
код, пример фильтра в верхней ссылке


"RE: Печать на НР4plus во FreeBSD (вроде печатает но лесенкой)"
Отправлено Vladimir , 09-Авг-02 15:15 
Уважаемый Lavr не могли бы Вы отослать мне свой e_mail на ivot@ukr.net
если можно еще подскажите как использовать в фильтре дополнительный код
для борьбы c LF
у меня к Вам еще есть вопрос по настройке PPP