XPrinter etikečių spausdintuvo nustatymas Linux sistemoje VMware Workstation
„CentOS“ nustatymo be grafinio apvalkalo pavyzdys; pagal analogiją galite nustatyti bet kurioje „Linux“ OS.
Sprendžiu konkrečią problemą: turiu spausdinti etiketes su savavališku tekstu naudojant PHP šabloną. Kadangi renginio metu negalite tikėtis stabilaus interneto ryšio, o dauguma automatizavimo užduočių sutampa su svetaine, nusprendėme dirbti su virtualia mašina VMware.
„Xprinter“ taip pat tinka užduočių žymėjimui, įdiegimas naudojant „Windows“ yra daug lengvesnis. Aš apsigyvenau prie XP-460B modelio, kurio etiketės plotis iki 108 mm.
Kadangi retai nustatau Linux ir jungiu prie jos įrenginius, ieškojau paruoštų sąrankos vadovų ir supratau, kad paprasčiausias būdas prijungti spausdintuvą yra per kaušelius. Negalėjau prijungti spausdintuvo per USB, nepadėjo jokios manipuliacijos vadovaujantis instrukcijose pateiktais patarimais, tiesiog kelis kartus sudaužiau virtualią mašiną.
Atsisiųskite tvarkykles iš gamintojo svetainės xprintertech.com, jos yra viename archyve, skirtoje „Windows“, „Mac“ ir „Linux“
Mano atveju, daugelio įrenginių tvarkyklės yra paskelbtos svetainėje 4 colių etikečių spausdintuvo tvarkyklės. Kaip paaiškėjo, XP-460B jau buvo nutrauktas, kuriai serijai jis priklauso, supratau pagal panašaus modelio XP-470B džiūvėsėlius.
Įdiekite spausdintuvą sistemoje „Windows“, įgalinkite bendrinimą
Linux sistemoje archyve yra 1 failas 4BARCODE. Tai yra „2 viename“ failas, bash scenarijus su tar archyvu, kuris išsipakuoja ir nukopijuoja tvarkykles į puodelius. Mano atveju bzip1 reikalingas išpakavimui (2 mm serijai naudojamas kitas archyvatorius)
yum install cups
yum install bzip2
chmod 744 ./4BARCODE
sh ./4BARCODE
service cups start
Toliau reikia atidaryti localhost:631 naršyklėje, patogumo dėlei nustatau, kad būtų atidaryta iš naršyklės Windows sistemoje. Redaguoti /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>
Pridėkite prievadą 631 prie ugniasienės (arba iptables):
Nuorodą atidarome naršyklėje naudodami virtualios mašinos IP, mano atveju 192.168.1.5:631/admin
Pridėkite spausdintuvą (reikia įvesti root ir slaptažodį)
Yra 2 parinktys, kurias man pavyko sukonfigūruoti per LPD protokolą ir per samba.
Norėdami prisijungti naudodami LPD protokolą, turite įjungti paslaugą sistemoje „Windows“ (įjungti arba išjungti „Windows“ komponentus) ir iš naujo paleisti kompiuterį.
Puodelių nustatymuose įveskite lpd://192.168.1.52/Xprinter_XP-460B, kur 192.168.1.52 yra kompiuterio, kuriame įdiegtas spausdintuvas, IP, Xprinter_XP-460B yra spausdintuvo pavadinimas Windows bendrinimo nustatymuose.
Pasirinkite tvarkyklę 4BARCODE => 4B-3064TA
Mes nieko nepasirenkame ir neišsaugome parametruose! Bandžiau pakoreguoti etiketės dydį, bet spausdintuvas dėl kokių nors priežasčių neveikia. Etiketės dydį galima nurodyti spausdinimo užduotyje.
Antras variantas. Turite įdiegti samba, paleisti, paleisti iš naujo puodelius, tada puodeliuose atsiras naujas prisijungimo taškas, nustatymuose įveskite eilutę kaip smb://user:[apsaugotas el. paštu]/Xprinter_XP-460B. Jei vartotojas yra vartotojas sistemoje Windows, vartotojas turi turėti nustatytą slaptažodį, autorizacija neveikia su tuščiu slaptažodžiu.
Kai viskas pavyko ir spausdintuvas išspausdino bandomąjį puslapį, užduotis galima siųsti per konsolę:
Šiame pavyzdyje etiketės matmenys yra 100x100 mm, 2 mm buvo pasirinkti eksperimentiškai. Atstumas tarp etikečių yra 3 mm, tačiau jei nustatote 103 mm aukštį, juosta pasislenka, todėl etiketę bus nepatogu nuplėšti. LPD protokolo trūkumas yra tas, kad užduotys siunčiamos kaip į įprastą spausdintuvą, ESC/P0S formatas nesiunčiamas spausdinti, o jutiklis nekalibruoja etikečių.
Tada galite dirbti su spausdintuvu per php. Yra bibliotekos darbui su puodeliais, man lengviau nusiųsti komandą į konsolę per exec();
Kadangi ESC/P0S neveikia, nusprendžiau padaryti šablonus pdf formatu naudodamas tFPDF biblioteką