Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Programmieren<br />
www.linux-magazin.de Perl-Snapshot 05/2011<br />
106<br />
Abbildung 7: Nach dem Skriptlauf enthält die Open-Office-Datei »ready.odt« alle eingefügten Adressen.<br />
Blatt Papier, dessen Aufdruck man anschließend<br />
durch ein frisches Etikettenblatt<br />
durchscheinen lässt.<br />
Ob die Etiketten im Papiereinzug nach<br />
oben oder unten zeigen müssen, damit<br />
der Drucker sie richtig bedruckt, und in<br />
welcher Richtung der Drucker das Blatt<br />
einziehen muss, lässt sich am besten herausfinden,<br />
indem man ein Blatt Papier<br />
im Einzug an einer Ecke mit Bleistift markiert,<br />
die Lage der Markierung auf einem<br />
Testdruck (Abbildung 7) begutachtet und<br />
im Kopf komplizierte raumgeometrische<br />
Transformationen anstellt.<br />
Für die <strong>In</strong>stallation sind die drei Module<br />
OpenOf fice::OODoc, Sysadm::<strong>In</strong>stall und<br />
Text::CSV_XS notwendig. Das letztgenannte<br />
ist eine geschwindigkeitsoptimierte<br />
Version des Oldtimers Text::CSV.<br />
Eine CPAN-Shell installiert diese Module,<br />
falls sie in der verwendeten Distribution<br />
nicht ohnehin schon verfügbar sind.<br />
Anschließend öffnet der User die Applikation<br />
Open Office Writer und wählt im<br />
Etiketten-Dialog das von ihm verwendete<br />
Etikettenformat aus. Der in Zeile 11<br />
von Listing 2 voreingestellte Wert von<br />
30 Labels pro Zeile muss der Anwender<br />
noch an das verwendete Etikettenformat<br />
anpassen.<br />
Fehlersuche<br />
Falls etwas im Ergebnis nicht stimmt,<br />
dann hilft die Analyse der ODF-Datei mit<br />
dem oben schon beschriebenen »oo-dumper«,<br />
um eventuelle Abweichungen vom<br />
Format durch passende Xpath-Queries zu<br />
kompensieren. Nachdem der Anwender<br />
einige Testfelder ausgefüllt und als »template.odt«<br />
abgespeichert hat, sollte das<br />
Skript »label-writer« mit einer ordnungsgemäß<br />
in UTF-8 kodierten Adressdatei<br />
»address-book.csv« ohne Ausgabe durch-<br />
Online PLUS<br />
Ein Screencast mit Michael Schilli<br />
demonstriert das Beispiel unter:<br />
[http:// www.linux-magazin.de/ plus<br />
/ 2011/ 05]<br />
laufen und die Datei »read.odt« erzeugen,<br />
die der Printer zugeschickt bekommt.<br />
Anwendungsmöglichkeiten<br />
Ganz offensichtlich bieten sich noch<br />
weitere Anwendungsmöglichkeiten an:<br />
Kabelbeschriftungen wie im Rechenzentrum<br />
oder auch Gerätenummern fürs<br />
Assett-Management. Vielleicht setze ich<br />
mir ja auch mein Buchhalter-Käppi auf,<br />
streife die Ärmelschoner über und verpasse<br />
jedem Buch meiner Privatbibliothek<br />
ein Etikett, das festlegt, in welches<br />
Regal es gehört [5]. (jcb)<br />
n<br />
<strong>In</strong>fos<br />
[1] Listings zu diesem Artikel:<br />
[ftp:// www. linux‐magazin. de/ pub/ listings/<br />
magazin/ 2011/ 05/ Perl]<br />
[2] Solveig Haugland, „A Simple Way to Do<br />
Labels in OpenOffice Writer“:<br />
[http:// openoffice. blogs. com/ openoffice/<br />
2007/ 06/ a‐simple‐way‐to. html]<br />
[3] Michael Schilli „Datenfischer“:<br />
<strong>Linux</strong>‐<strong>Magazin</strong> 08/ 2005: [http:// www.<br />
linux‐magazin. de/ Heft‐Abo/ Ausgaben/<br />
2005/ 08/ Datenfischer2]<br />
[4] Jean‐Marie Gouarné, „The Perl OpenDocument<br />
Connector“: The Perl Review, tpr‐<br />
200604‐v3i1.pdf<br />
[5] Michael Schilli, „Ab die Post!“:<br />
<strong>Linux</strong>‐<strong>Magazin</strong> 10/ 2004, [http:// www.<br />
linux‐magazin. de/ Heft‐Abo/ Ausgaben/<br />
2004/ 10/ Ab‐die‐Post]<br />
[6] Michael Schilli, „Kein Etikettenschwindel“:<br />
<strong>Linux</strong>‐<strong>Magazin</strong> 08/ 10, [http:// www.<br />
linux‐magazin. de/ Heft‐Abo/ Ausgaben/<br />
2008/ 10/ Kein‐Etikettenschwindel]<br />
Abbildung 8: Eine fertige Seite mit gedruckten Etiketten.<br />
Der Autor<br />
Michael Schilli arbeitet als Software‐Engineer bei<br />
Yahoo in Sunnyvale, Kalifornien. Er hat die Bücher<br />
„Goto Perl 5“ (auf Deutsch)<br />
und „Perl Power“ (auf Englisch)<br />
für Addison‐Wesley<br />
geschrieben und ist unter<br />
[mschilli@perlmeister. com]<br />
zu erreichen.