ProHoster > Blog > administration > Konfiguration af en XPrinter Label Printer på Linux i VMware Workstation
Konfiguration af en XPrinter Label Printer på Linux i VMware Workstation
Et eksempel på opsætning i CentOS uden en grafisk shell; analogt kan du sætte det op på ethvert Linux OS.
Jeg løser et specifikt problem, fra php skal jeg udskrive etiketter med vilkårlig tekst efter en skabelon. Da begivenheden ikke kan stole på et stabilt internet, og de fleste af automatiseringsopgaverne overlapper med hjemmesiden, besluttede vi at arbejde med en virtuel maskine på VMware.
XPrinter er også velegnet til at markere opgaver, det er meget nemmere at installere under vinduer. Jeg nøjedes med XP-460B-modellen med en etiketbredde på op til 108 mm.
Da jeg sjældent opsætter Linux og tilslutter enheder til det, ledte jeg efter færdige opsætningsmanualer, jeg indså, at den nemmeste måde at tilslutte en printer er gennem kopper. Jeg kunne ikke tilslutte printeren via USB, ingen manipulationer på rådene i manualerne hjalp, jeg brød bare den virtuelle maskine flere gange.
Vi downloader driverne fra producentens hjemmeside xprintertech.com, de kommer i ét arkiv til Windows, Mac og Linux
Drivere er lagt på webstedet til en række enheder, i mit tilfælde 4 tommer etiketprinterdrivere. Da det viste sig, er XP-460B allerede udgået, jeg fandt ud af hvilken serie den tilhører baseret på brødkrummer af en lignende XP-470B-model.
Installer printeren i Windows, aktiver deling
For Linux indeholder arkivet 1 fil 4BARCODE. Dette er en 2 i 1 fil, et bash-script med et tar-arkiv, der pakker sig selv ud og kopierer driverne til kopper. I mit tilfælde er bzip2 nødvendig til udpakning (til 80 mm-serien bruges en anden arkiver)
yum install cups
yum install bzip2
chmod 744 ./4BARCODE
sh ./4BARCODE
service cups start
Dernæst skal du åbne localhost:631 i browseren, for nemheds skyld foretager jeg indstillingen til at åbne fra browseren i Windows. Rediger /etc/cups/cupsd.conf:
Listen localhost:631 меняем на Listen *:631
<Location />
Order allow,deny
Allow localhost
Allow 192.168.1.*
</Location>
<Location /admin>
Order allow,deny
Allow localhost
Allow 192.168.1.*
</Location>
Vi åbner linket i browseren ved IP-adressen på den virtuelle maskine, i mit tilfælde 192.168.1.5:631/admin
Tilføj en printer (du skal indtaste root og adgangskode)
Der er 2 muligheder, som jeg formåede at konfigurere, via LPD-protokollen og via samba.
For at oprette forbindelse via LPD-protokollen skal du aktivere tjenesten i Windows (Slå Windows-funktioner til eller fra), genstart computeren.
Indtast lpd://192.168.1.52/Xprinter_XP-460B i kopindstillingerne, hvor 192.168.1.52 er IP-adressen på den computer, som printeren er installeret på, Xprinter_XP-460B er navnet på printeren i Windows-delingsindstillingerne
Vælg driver 4BARCODE => 4B-3064TA
Vi vælger ikke noget i parametrene og gemmer ikke! Jeg prøvede at justere etiketstørrelsen, men så virker printeren af en eller anden grund ikke. Etiketstørrelsen kan indstilles i udskriftsjobbet.
Forsøger at udskrive en testside - færdig!
Anden mulighed. Du skal installere samba, start, genstart cups, så vil et nyt forbindelsespunkt dukke op i cups, indtast en linje som smb://user i indstillingerne:[e-mail beskyttet]/Xprinter_XP-460B. Hvor brugeren er en bruger i Windows, skal brugeren have en adgangskode, godkendelsen passerer ikke med en tom.
Når alt fungerede, og printeren udskrev en testside, kan job sendes gennem konsollen:
I dette eksempel har etiketten dimensioner på 100x100 mm, 2 mm vælges eksperimentelt. Afstanden mellem etiketterne er 3 mm, men sætter man højden til 103 mm, forskydes tapen, det er upraktisk at rive etiketten af. Ulempen ved LPD-protokollen er, at job sendes som en almindelig printer, ESC/P0S-formatet sendes ikke til udskrivning, sensoren kalibrerer ikke etiketter.
Så kan du arbejde med printeren gennem php. Der er biblioteker til at arbejde med kopper, det er nemmere for mig at sende en kommando til konsollen via exec();
Da ESC/P0S ikke virker, besluttede jeg at lave skabeloner i pdf via tFPDF bibliotek