Add new translated sections.

Submitted by:	Andreas Heck <aheck@mozilla-center.de>
This commit is contained in:
Martin Heinen 2004-09-05 14:24:31 +00:00
parent 3fa4a6c456
commit 5f5e799b5d
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=22246

View file

@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD German Documentation Project
$FreeBSD$
$FreeBSDde: de-docproj/books/handbook/printing/chapter.sgml,v 1.25 2004/06/27 20:54:43 mheinen Exp $
$FreeBSDde: de-docproj/books/handbook/printing/chapter.sgml,v 1.28 2004/08/23 15:49:51 jkois Exp $
basiert auf: 1.86
-->
@ -1705,7 +1705,7 @@ $%&amp;'()*+,-./01234567
<para>Dieser Abschnitt ist noch nicht &uuml;bersetzt. Lesen Sie
bitte <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/printing-advanced.html">
url="&url.books.handbook.en;/printing-advanced.html">
das Original in englischer Sprache</ulink>.</para>
<sect2 id="printing-advanced-filter-intro">
@ -1847,7 +1847,7 @@ $%&amp;'()*+,-./01234567
<para>Dieser Abschnitt ist noch nicht &uuml;bersetzt. Lesen Sie
bitte <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/printing-using.html">
url="&url.books.handbook.en;/printing-using.html">
das Original in englischer Sprache</ulink>.</para>
<sect2 id="printing-lpr">
@ -1898,22 +1898,400 @@ $%&amp;'()*+,-./01234567
</sect1>
<sect1 id="printing-lpd-alternatives">
<title>* Alternativen zum
Standard-<application>LPD</application>-System</title>
<title>Alternativen zum
<application>LPD</application>-Drucksystem</title>
<para>Dieser Abschnitt ist noch nicht &uuml;bersetzt. Lesen Sie
bitte <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/printing-lpd-alternatives.html">
das Original in englischer Sprache</ulink>.</para>
<para>Wenn Sie dieses Kapitel bis hierher gelesen haben, wissen
Sie so gut wie alles &uuml;ber
<application>LPD</application>, das Standarddrucksystem von
FreeBSD. Wahrscheinlich sind Ihnen bereits einige
Unzul&auml;nglichkeiten dieses Systems aufgefallen, und Sie
fragen sich nun, welche anderen Drucksysteme es f&uuml;r FreeBSD
gibt.</para>
<variablelist>
<varlistentry>
<term>LPRng</term>
<indexterm><primary>LPRng</primary></indexterm>
<listitem>
<para><application>LPRng</application> steht f&uuml;r
<quote>LPR: the Next Generation</quote>. Dabei handelt es
sich um eine von Grund auf neu geschriebene Version von PLP.
LPRng wurde von Patrick Powell und Justin Mason, dem
Hauptmaintainer von PLP, entwickelt . Die offizielle
Webseite von <application>LPRng</application> ist unter
<ulink url="http://www.lprng.org/"></ulink> zu finden.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>CUPS</term>
<indexterm><primary>CUPS</primary></indexterm>
<listitem>
<para><application>CUPS</application>, das
<foreignphrase>Common UNIX Printing System</foreignphrase>,
stellt eine portable Abstraktionsschicht dar, die das
Drucken auf allen &unix;-artigen Betriebsystemen
erm&ouml;glicht. <application>CUPS</application> wurde von
Easy Software entwickelt, um &unix;-Herstellern und
-Benutzern eine einheitliche Standardl&ouml;sung f&uuml;r
den Druck von Dokumenten zu bieten.</para>
<para><application>CUPS</application> verwendet das Internet
Printing Protocol (<acronym>IPP</acronym>), um
Druckauftr&auml;ge und -warteschlangen zu verwalten.
Zus&auml;tzlich werden die Protokolle
<foreignphrase>Line Printer Daemon</foreignphrase>
(<acronym>LPD</acronym>),
<foreignphrase>Server Message Block</foreignphrase>
(<acronym>SMB</acronym>), und
<foreignphrase>AppSocket/JetDirect</foreignphrase>),
unterst&uuml;tzt, wenn auch nur mit eingeschr&auml;nkter
Funktionalit&auml;t. Ausserdem erm&ouml;glicht
<application>CUPS</application> das Auffinden von
Netzwerkdruckern sowie die Verwendung auf
<foreignphrase>PostScript Printer
Description</foreignphrase> (<acronym>PPD</acronym>)
basierender Druckoptionen.</para>
<para>Die offizielle Webseite von <application>CUPS</application>
ist <ulink url="http://www.cups.org/"></ulink>.</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="printing-troubleshooting">
<title>* Fehlersuche und Problembehebung</title>
<title>Problembehandlung</title>
<para>Dieser Abschnitt ist noch nicht &uuml;bersetzt. Lesen Sie
bitte <ulink
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/printing-troubleshooting.html">
das Original in englischer Sprache</ulink>.</para>
<para>Wenn Sie eine einfache Testseite mit &man.lptest.1; gedruckt
haben, k&ouml;nnte eines der folgenden Probleme aufgetreten
sein:</para>
<variablelist>
<varlistentry>
<term>Der Druck hat erst mit einer gewissen Verz&ouml;gerung
geklappt oder das bedruckte Blatt verblieb im Drucker, so als
w&auml;re der Druckvorgang noch nicht abgeschlossen.</term>
<listitem>
<para>Die Testseite wurde zwar gedruckt, danach tat sich
allerdings nichts mehr. Vielleicht mussten Sie sogar eine
Taste Ihres Druckers, etwa PRINT REMAINING oder FORM FEED
dr&uuml;cken, damit der Druckvorgang fortgesetzt wurde.</para>
<para>Wenn das der Fall ist, hat der Drucker vermutlich vor
dem eigentlichen Drucken gewartet, ob noch weitere Daten
f&uuml;r Ihren Druckauftrag gesendet werden. Um dieses
Problem zu beheben, k&ouml;nnen Sie den Textfilter
anweisen, ein <foreignphrase>Form Feed</foreignphrase>
-Zeichen (oder ein anderes entsprechendes Zeichen) an den
Drucker zu senden. Dies reicht f&uuml;r gew&ouml;hnlich
aus, um den Drucker zum Druck des noch im internen
Puffer verbliebenen Textes zu bewegen. Dadurch kann auch
sichergestellt werden, dass jeder neue Druckauftrag auf
einer neuen Seite beginnt.</para>
<para>Der folgende Ersatz f&uuml;r das Shell-Skript
<filename>/usr/local/libexec/if-simple</filename> gibt
ein <quote>Form Feed</quote> aus, nachdem der Auftrag an
den Drucker geschickt wurde:</para>
<programlisting>#!/bin/sh
#
# if-simple - Einfacher Eingabefilter f&uuml;r lpd
# Installiert unter /usr/local/libexec/if-simple
#
# Kopiert stdin einfach nach stdout. Ignoriert alle Filter-Argumente.
# Schreibt ein Form-Feed-Zeichen (\f) nach dem Ende des Druckauftrages.
/bin/cat &amp;&amp; printf "\f" &amp;&amp; exit 0
exit 2</programlisting>
</listitem>
</varlistentry>
<varlistentry>
<term>Der Drucker erzeugte einen <quote>Treppeneffekt</quote>
(<foreignphrase>staircase effect</foreignphrase>).</term>
<listitem>
<para>Sie haben einen Ausdruck &auml;hnlich dem folgenden
erhalten:</para>
<programlisting>!"#$%&amp;'()*+,-./01234
"#$%&amp;'()*+,-./012345
#$%&amp;'()*+,-./0123456</programlisting>
<indexterm><primary>MS-DOS</primary></indexterm>
<indexterm><primary>OS/2</primary></indexterm>
<indexterm><primary>ASCII</primary></indexterm>
<para>Sie sind zu einem weiteren Opfer des
<emphasis>Treppeneffekts</emphasis> geworden. Verursacht
wird dieser Effekt durch unterschiedliche Ansichten
dar&uuml;ber, welche Zeichen den Beginn einer neuen Zeile
anzeigen sollen. &unix;-&auml;hnliche Betriebssysteme
verwenden daf&uuml;r ein einzelnes Zeichen: ASCII-Code 10,
auch als <foreignphrase>Line Feed</foreignphrase> (LF)
bekannt. &ms-dos;, &os2; und andere Betriebssysteme
verwenden stattdessen ein Zeichenpaar: ASCII-Code 10
<emphasis>und</emphasis> ASCII-Code 13,
<foreignphrase>Carriage Return</foreignphrase> (CR). Viele
Drucker verwenden in der Voreinstellung die Konvention von
&ms-dos;, um Zeilenumbr&uuml;che darzustellen.</para>
<para>Wenn Sie unter FreeBSD drucken, wird nur das Zeichen
<foreignphrase>Line Feed</foreignphrase> verwendet. Der
Drucker erkennt dieses Zeichen und erweitert den
Druckbereich um eine Zeile, verbleibt zum Druck des
n&auml;chsten Zeichens aber in derselben horizontalen
Position. Das ist der Grund f&uuml;r die Verwendung des
<foreignphrase>Carriage Return</foreignphrase>: Es setzt
die Position f&uuml;r das folgende Zeichen auf den linken
Rand der Seite.</para>
<para>FreeBSD erwartet von einem Drucker das folgende
Verhalten:</para>
<informaltable frame="none">
<tgroup cols="2">
<tbody>
<row>
<entry>Drucker empf&auml;ngt CR</entry>
<entry>Drucker druckt CR</entry>
</row>
<row>
<entry>Drucker empf&auml;ngt LF</entry>
<entry>Drucker druckt CR + LF</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Es gibt mehrere M&ouml;glichkeiten, dieses Verhalten zu
erreichen:</para>
<itemizedlist>
<listitem>
<para>Ver&auml;ndern Sie die Konfiguration Ihres Druckers,
um die Interpretation dieser Zeichen zu ver&auml;ndern.
Lesen Sie Ihr Druckerhandbuch, wenn Sie nicht wissen,
was Sie dazu tun m&uuml;ssen.</para>
<note>
<para>Wenn Sie auf Ihrem Rechner neben FreeBSD noch
andere Betriebssysteme verwenden, m&uuml;ssen Sie
Ihren Drucker m&ouml;glicherweise anschlie&szlig;end
<emphasis>erneut</emphasis> konfigurieren, damit die
Zeichen CR und LF unter diesen Systemen korrekt
interpretiert werden. Ist dies bei Ihnen der Fall,
werden Sie wohl eine der folgenden L&ouml;sungen
bevorzugen.</para>
</note>
</listitem>
<listitem>
<para>Lassen Sie LF durch den Treiber der seriellen
Schnittstelle automatisch in CR+LF konvertieren.
Selbstverst&auml;ndlich funktioniert dies nur mit
Druckern, die an einer seriellen Schnittstelle
angeschlossen sind. Um diese M&ouml;glichkeit zu
nutzen, m&uuml;ssen Sie die
<literal>ms#</literal>-F&auml;higkeit verwenden und
in <filename>/etc/printcap</filename> den
<literal>onlcr</literal>-Modus f&uuml;r den Drucker
aktivieren.</para>
</listitem>
<listitem>
<para>Senden Sie eine <emphasis>Escape-Sequenz</emphasis>
an den Drucker, damit das Zeichen LF zeitweilig anders
behandelt wird. Suchen Sie im Handbuch Ihres Druckers
nach den von Ihrem Drucker unterst&uuml;tzten
Escape-Sequenzen. Wenn Sie eine entsprechenden
Escape-Sequenz finden, m&uuml;ssen Sie den Textfilter so
anpassen, dass zuerst die Escape-Sequenz und
anschlie&szlig;end der Druckauftrag gesendet wird.</para>
<indexterm><primary>PCL</primary></indexterm>
<para>Es folgt nun ein Bespieltextfilter f&uuml;r einen
Drucker, der die Hewlett Packard PCL Escape-Sequenzen
versteht. Dieser Filter veranlasst den Drucker,
LF-Zeichen als Folgen von LF+CR aufzufassen.
Anschlie&szlig;end wird der Druckauftrag gesendet. Als
Abschluss wird ein <foreignphrase>Form
Feed</foreignphrase> gesendet, um die letzte Seite des
Druckauftrags auszuwerfen. Dieses Beispiel sollte mit
nahezu allen Druckern von Hewlett Packard
funktionieren.</para>
<programlisting>#!/bin/sh
#
# hpif - Einfacher Text-Eingabefilter f&uuml;r lpd f&uuml;r auf HP-PCL basierende Drucker
# Installiert unter /usr/local/libexec/hpif
#
# Kopiert stdin einfach nach stdout. Ignoriert alle Filterargumente.
# Weist den Drucker an LF als CR+LF zu interpretieren.
# Wirft die Seite nach dem Drucken aus.
printf "\033&amp;k2G" &amp;&amp; cat &amp;&amp; printf "\033&amp;l0H" &amp;&amp; exit 0
exit 2</programlisting>
<para>Das n&auml;chste Beispiel aus
<filename>/etc/printcap</filename> beschreibt den
Rechner <hostid>orchid</hostid>, an dessen Parallelport
ein Drucker angeschlossen ist. Es handelt sich dabei um
einen Hewlett Packard LaserJet&nbsp;3Si, der den Namen
<literal>teak</literal> verwendet. Als Textfilter wird
das Skript aus dem letzten Beispiel verwendet:</para>
<programlisting>#
# /etc/printcap f&uuml;r den Rechner orchid
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:\
:lp=/dev/lpt0:sh:sd=/var/spool/lpd/teak:mx#0:\
:if=/usr/local/libexec/hpif:</programlisting>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>Alle Zeilen wurden in die gleiche Zeile gedruckt.</term>
<listitem>
<para>Der Drucker hat niemals eine neue Zeile begonnen. Alle
Zeilen des Textes wurden in eine einzige Zeile gedruckt.</para>
<para>Dieses Problem ist das <quote>Gegenteil</quote> des
oben beschriebenen Treppeneffekts und kommt wesentlich
seltener vor. Die von FreeBSD zum Abschluss einer Zeile
benutzten LF-Zeichen werden als CR-Zeichen interpretiert.
Dadurch wird die Druckposition zwar auf den linken Rand
der Seite, aber nicht um eine Zeile nach unten gesetzt.</para>
<para>Konfigurieren Sie Ihren Drucker, um die folgende
Interpretation der Zeichen LF und CR zu erzwingen:</para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Drucker empf&auml;ngt</entry>
<entry>Drucker druckt</entry>
</row>
</thead>
<tbody>
<row>
<entry>CR</entry>
<entry>CR</entry>
</row>
<row>
<entry>LF</entry>
<entry>CR + LF</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</listitem>
</varlistentry>
<varlistentry>
<term>Manche Zeichen wurden nicht gedruckt.</term>
<listitem>
<para>Der Drucker hat in jeder Zeile einige Zeichen nicht
gedruckt. Vielleicht ist das Problem auch w&auml;hrend des
Druckens schlimmer geworden, und der Drucker hat immer mehr
Zeichen nicht gedruckt.</para>
<para>Dieses Problem entsteht, weil der Drucker mit der
Geschwindigkeit, mit der die Daten &uuml;ber die serielle
Schnittstelle (an einer parallelen Schnittstelle sollte das
Problem nicht auftreten) eintreffen, nicht mithalten kann.
Es gibt zwei M&ouml;glichkeiten, dieses Problem zu
l&ouml;sen:</para>
<itemizedlist>
<listitem>
<para>Wenn der Drucker die Flusskontrolle mit XON/XOFF
unterst&uuml;tzt, k&ouml;nnen Sie in der
<literal>ms#</literal>-F&auml;higkeit den
<literal>ixon</literal>-Modus aktivieren.</para>
</listitem>
<listitem>
<para>Unterst&uuml;tzt der Drucker die
Carrier-Flusskontrolle, dann sollten Sie den
<literal>crtscts</literal>-Modus in der
<literal>ms#</literal>-F&auml;higkeit aktivieren.
Stellen Sie aber sicher, dass das verwendete
Druckerkabel auch f&uuml;r die Carrier-Flusskontrolle
geeignet ist.</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>Es wurden nur wirre Zeichen gedruckt.</term>
<listitem>
<para>Anstelle des gew&uuml;nschten Textes wurden nur
zuf&auml;llige Zeichen gedruckt.</para>
<para>Dieses Problem wird ebenfalls durch falsche
Konfigurationsparameter im Zusammenhang mit einem seriellen
Drucker verursacht. Kontrollieren Sie die bps-Rate in der
<literal>br</literal>-F&auml;higkeit und die
Parit&auml;tseinstellung
(<foreignphrase>Parity</foreignphrase>) in der
<literal>ms#</literal>-F&auml;higkeit. &Uuml;berpr&uuml;fen
Sie au&szlig;erdem, ob der Drucker auch tats&auml;chlich die
gleichen Einstellungen verwendet, die in
<filename>/etc/printcap</filename> definiert wurden.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Der Drucker hat &uuml;berhaupt nicht reagiert.</term>
<listitem>
<para>Wenn gar nichts passiert ist, dann liegt das vermutlich
an FreeBSD und nicht am Drucker. Aktivieren Sie die
Protokollierung (<literal>lf</literal>-F&auml;higkeit)
f&uuml;r den entsprechenden Drucker in der Datei
<filename>/etc/printcap</filename>. Es folgt nun ein
Beispieleintrag f&uuml;r den Drucker
<literal>rattan</literal>, bei dem die
<literal>lf</literal>-F&auml;higkeit aktiviert wurde.</para>
<programlisting>rattan|line|diablo|lp|Diablo 630 Line Printer:\
:sh:sd=/var/spool/lpd/rattan:\
:lp=/dev/lpt0:\
:if=/usr/local/libexec/if-simple:\
:lf=/var/log/rattan.log</programlisting>
<para>Versuchen Sie jetzt noch einmal zu drucken.
&Uuml;berpr&uuml;fen Sie die Protokolldatei (in unserem
Beispiel <filename>/var/log/rattan.log</filename>) auf
etwaige Fehlermeldungen. Versuchen Sie aufgrund dieser
Meldungen, das Problem zu beheben.</para>
<para>Wenn Sie keine Protokolldatei festlegen, verwendet
<application>LPD</application> in der Voreinstellung
<filename>/dev/console</filename> f&uuml;r die Ausgabe
der Fehlermeldungen.</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
</chapter>