Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation

Yon egzanp pou mete kanpe sou CentOS san yon kokiy grafik; pa analoji, ou ka mete kanpe sou nenpòt OS Linux.

Mwen rezoud yon pwoblèm espesifik: Mwen bezwen enprime etikèt ak tèks abitrè lè l sèvi avèk yon modèl ki soti nan PHP. Kòm ou pa ka konte sou yon koneksyon entènèt ki estab nan evènman an, ak pi fò nan travay yo automatisation sipèpoze ak sit entènèt la, nou deside travay ak yon machin vityèl sou VMware.

XPrinter tou apwopriye pou make travay; enstalasyon anba Windows se pi fasil. Mwen rete sou modèl XP-460B ak yon lajè etikèt ki rive jiska 108 mm.

Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation

Depi mwen raman mete Linux epi konekte aparèy ak li, mwen te chèche manyèl konfigirasyon pare yo e mwen reyalize ke fason ki pi fasil pou konekte yon enprimant se atravè tas. Mwen pa t 'kapab konekte enprimant lan atravè USB; okenn nan manipilasyon yo swiv konsèy ki nan manyèl yo te ede, mwen jis fè aksidan machin vityèl la plizyè fwa.

  • Telechaje chofè sou sitwèb manifakti a xprintertech.com, yo vini nan yon sèl achiv pou Windows, Mac ak Linux.

    Chofè yo afiche sou sit entènèt la pou yon seri aparèy, nan ka mwen an Chofè enprimant etikèt 4 pous. Kòm li vire soti, XP-460B la te deja sispann; Mwen kalkile ki seri li fè pati ki baze sou pen yo nan yon modèl menm jan an, XP-470B la.

  • Enstale enprimant lan nan Windows, pèmèt pataje

    Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation

  • Pou Linux, achiv la gen 1 fichye 4BARCODE. Sa a se yon dosye "2 nan 1", yon script bash ak yon achiv goudwon ​​ki depake tèt li epi kopye chofè yo nan tas. Nan ka mwen an, bzip2 nesesè pou debalaj (pou seri a 80 mm yo itilize yon achiv diferan)
    yum install cups
    yum install bzip2
    chmod 744 ./4BARCODE
    sh ./4BARCODE
    service cups start
    
  • Apre sa ou bezwen louvri lokalost:631 nan navigatè a, pou konvenyans mwen fè yon anviwònman yo louvri nan navigatè a nan Windows. Edit /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>
    

    Ajoute pò 631 nan firewall la (oswa iptables):

    firewall-cmd --zone=public --add-port=631/tcp --permanent
    firewall-cmd --reload
    
  • Nou louvri lyen an nan navigatè a lè l sèvi avèk IP machin vityèl la, nan ka mwen an 192.168.1.5:631/admin

    Ajoute yon enprimant (ou bezwen antre rasin ak modpas)

    Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation

  • Gen 2 opsyon ke mwen jere yo konfigirasyon, atravè pwotokòl la LPD ak atravè Samba.
    1. Pou konekte atravè pwotokòl LPD, ou bezwen aktive sèvis la nan fenèt (Vire konpozan Windows sou oswa koupe) epi rekòmanse òdinatè a.

      Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation
      Nan paramèt tas yo, antre lpd://192.168.1.52/Xprinter_XP-460B, kote 192.168.1.52 se IP òdinatè ki enstale aparèy pou enprime a, Xprinter_XP-460B se non enprimant lan nan paramèt pataje fenèt yo.

      Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation
      Chwazi chofè 4BARCODE => 4B-3064TA

      Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation
      Nou pa chwazi oswa sove anyen nan paramèt yo! Mwen te eseye ajiste gwosè etikèt la, men Lè sa a, enprimant lan pa travay pou kèk rezon. Gwosè etikèt la ka espesifye nan travay enprime a.

      Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation
      Nou eseye enprime yon paj tès - fini!

    2. Dezyèm opsyon. Ou bezwen enstale Samba, kòmanse, rekòmanse tas, Lè sa a, yon nouvo pwen koneksyon ap parèt nan tas, nan anviwònman yo antre nan yon liy tankou smb://user:[imèl pwoteje]/Xprinter_XP-460B. Ki kote, itilizatè se yon itilizatè nan Windows, itilizatè a dwe gen yon modpas mete, otorizasyon pa travay ak yon sèl vid.

Lè tout bagay te mache epi enprimant lan enprime yon paj tès, travay yo ka voye atravè konsole a:

lpr -P Xprinter_XP-460B -o media=Custom.100x102mm test.txt

Nan egzanp sa a, etikèt la gen dimansyon 100x100 mm, 2 mm yo te chwazi eksperimantal. Distans ki genyen ant etikèt yo se 3 mm, men si ou mete wotè a 103 mm, kasèt la chanje, sa ki fè li enkonvenyan detache etikèt la. Dezavantaj nan pwotokòl LPD a se ke travay yo voye kòm nan yon enprimant regilye, fòma ESC/P0S pa voye pou enprime, ak Capteur a pa kalibre etikèt.

Lè sa a, ou ka travay ak enprimant lan atravè php. Gen bibliyotèk pou travay ak tas, li pi fasil pou mwen voye yon lòd nan konsole a atravè exec();

Depi ESC/P0S pa travay, mwen deside fè modèl nan pdf lè l sèvi avèk bibliyotèk tFPDF la.

require_once($_SERVER["DOCUMENT_ROOT"] . "/tfpdf/tfpdf.php");
$w = 100;
$h = 100;
$number = 59;
$pdf = new tFPDF('P', 'mm', [$w, $h]);
$pdf->SetTitle('Information');
$pdf->AddFont('Font', 'B', $_SERVER["DOCUMENT_ROOT"] . '/fonts/opensans-bold.ttf', true);
$pdf->SetTextColor(0,0,0);
$pdf->SetDrawColor(0,0,0);

$pdf->AddPage('P');
$pdf->SetDisplayMode('real','default');
$pdf->Image($_SERVER["DOCUMENT_ROOT"]. '/images/logo_site.png',$w - 4 - 28,$h - 13,28.1,9.6,'');

$pdf->SetFontSize(140);
$pdf->SetXY(0,24);
$pdf->Cell($w,$h - 45, $number,0,0,'C',0);

$pdf->SetFontSize(1);
$pdf->SetTextColor(255,255,255);
$pdf->Write(0, $number);

$pdf->Output('example.pdf','I');

exec('php label.php | lpr -P Xprinter_XP-460B -o media=Custom.100x102mm');

Mete kanpe yon enprimant etikèt XPrinter sou Linux nan VMware Workstation
Pare. Mwen te pase 2 wikenn mete kanpe, mwen espere sa ap itil yon moun.

Sous: www.habr.com

Add nouvo kòmantè