Podczas próby wysłania pliku tekstowego do drukarki za pośrednictwem lprz xterm, treść została uszkodzona nie do poznania, czego przyczyną ostatecznie było kodowanie pliku. Jeśli zamiast tego przetwarzam tekst za pomocą iconv(np. iconv -f utf-8 -t ascii//TRANSLIT), Plik jest drukowany normalnie. Inną sugestią, na jaką natknąłem się, jest ustawienie formatu dokumentu (np. lpr -o document-format=text/utf8), Ale to zwraca błąd lpr: Unsupported document-format "text/utf8". Zawsze mogłem użyć aliasu lprpolecenia włączenia przetwarzania iconv, ale czy istnieje bardziej ogólny sposób na natywną obsługę utf-8 w CUPS/ lprsystemie?
Edycja: Mój system operacyjny to Debian 8, a moim menedżerem okien jest openbox(brak środowiska pulpitu). Mogę wydrukować ten plik bez problemu z MacOS X, a także z systemu Debian7 / Gnome3.
Z mojego obecnego systemu powinienem zauważyć, że nawet po zmianie kodowania znaków z UTF-8 na ASCII znaki nowego wiersza nie są przestrzegane lpr, więc wiersze są łączone razem i drukowane aż do osiągnięcia marginesu papieru. Po przekodowaniu i transliteracji iconvw systemie MacOS X drukowanie nadal działa normalnie (więc problem nowej linii jest również specyficzny dla mojego obecnego systemu).
a2psfiltra. Nie byłam tego świadoma. Ta drukarka to skanująca drukarka laserowa HP4650. Jak określić kodowanie używane przez CUPS? Znaki rzeczywiście wydrukowane, które nie mają dostrzegalnego związku z danymi wejściowymi, obejmowały grecką gamma kapitałową, wielką C z cedillą, o z daszkiem, oraz łacińską literę W i T. Poza tym nieprzestrzeganie wyników znaków nowej linii w obcięciu produkcji na marginesie papieru.
lpr -o document-format='text/plain;charset=utf-8', że wystarczy zadzwonić , aby wydrukować tyle, ile chcesz, ale nie zmienia to domyślnej instalacji CUPS, która wydaje się przestarzała.
a2ps? Jakie kodowanie jest naprawdę używane na wyjściu, gdy wypróbujesz utf-8? (Chyba takiso-8859-1)