Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation

Usa ka pananglitan sa pag-set up sa CentOS nga walay graphical shell; pinaagi sa analogy, mahimo ka nga mag-set up sa bisan unsang Linux OS.

Gisulbad nako ang usa ka piho nga problema: Kinahanglan kong mag-imprinta og mga label nga adunay arbitraryong teksto gamit ang template gikan sa PHP. Tungod kay dili ka makasalig sa usa ka lig-on nga koneksyon sa Internet sa kalihokan, ug kadaghanan sa mga buluhaton sa automation nagsapaw sa website, nakahukom kami nga magtrabaho sa usa ka virtual nga makina sa VMware.

Ang XPrinter angay usab alang sa pagmarka sa mga buluhaton; ang pag-install sa ilawom sa Windows labi ka dali. Nagpuyo ako sa modelo nga XP-460B nga adunay gilapdon nga label hangtod sa 108 mm.

Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation

Tungod kay panagsa ra ko nga nag-set up sa Linux ug nagkonektar sa mga aparato niini, nangita ako mga andam nga gihimo nga mga manwal sa pag-setup ug nakaamgo nga ang labing kadali nga paagi sa pagkonektar sa usa ka tig-imprinta mao ang pinaagi sa mga tasa. Dili nako makonektar ang tig-imprenta pinaagi sa USB, walay mga manipulasyon nga nagsunod sa tambag sa mga manwal nga nakatabang, nahagsa lang nako ang virtual machine sa makadaghang higayon.

  • Pag-download sa mga drayber gikan sa website sa tiggama nga xprintertech.com, moabut sila sa usa ka archive alang sa Windows, Mac ug Linux

    Ang mga drayber gi-post sa website alang sa usa ka serye sa mga himan, sa akong kaso 4 pulgada nga Label Printer Drivers. Ingon sa nahibal-an, ang XP-460B gihunong na; Akong nahibal-an kung unsang serye ang nahisakop niini base sa mga breadcrumb sa susama nga modelo, ang XP-470B.

  • I-install ang tig-imprinta sa Windows, i-enable ang pagpaambit

    Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation

  • Para sa Linux, ang archive adunay 1 ka file nga 4BARCODE. Kini usa ka "2 sa 1" nga file, usa ka bash script nga adunay tar archive nga nag-unpack sa kaugalingon ug gikopya ang mga drayber sa mga tasa. Sa akong kaso, ang bzip2 gikinahanglan alang sa pag-unpack (alang sa 80 mm nga serye gigamit ang lain nga archiver)
    yum install cups
    yum install bzip2
    chmod 744 ./4BARCODE
    sh ./4BARCODE
    service cups start
    
  • Sunod kinahanglan nimo nga ablihan localhost:631 sa browser, para sa kasayon ​​naghimo ko og setting aron maablihan gikan sa browser sa Windows. I-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>
    

    Idugang ang port 631 sa firewall (o iptables):

    firewall-cmd --zone=public --add-port=631/tcp --permanent
    firewall-cmd --reload
    
  • Among giablihan ang link sa browser gamit ang IP sa virtual machine, sa akong kaso 192.168.1.5:631/admin

    Pagdugang usa ka tig-imprinta (kinahanglan nimo nga mosulod sa gamut ug password)

    Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation

  • Adunay 2 nga kapilian nga akong na-configure, pinaagi sa protocol sa LPD ug pinaagi sa samba.
    1. Aron makonektar pinaagi sa LPD protocol, kinahanglan nimo nga i-enable ang serbisyo sa windows (I-on o i-off ang mga component sa Windows) ug i-restart ang computer.

      Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation
      Sa mga setting sa mga tasa, isulod ang lpd://192.168.1.52/Xprinter_XP-460B, diin ang 192.168.1.52 mao ang IP sa kompyuter diin gi-install ang tig-imprenta, ang Xprinter_XP-460B mao ang ngalan sa tig-imprenta sa mga setting sa pagpakigbahin sa windows

      Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation
      Pilia ang drayber 4BARCODE => 4B-3064TA

      Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation
      Wala kami nagpili o nagtipig bisan unsa sa mga parameter! Gisulayan nako ang pag-adjust sa gidak-on sa label, apan ang tig-imprinta wala mogana sa pipila ka rason. Ang gidak-on sa label mahimong matino sa trabaho sa pag-imprinta.

      Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation
      Gisulayan namon ang pag-imprinta sa usa ka panid sa pagsulay - nahuman na!

    2. Ikaduha nga kapilian. Kinahanglan nimo nga i-install ang samba, pagsugod, i-restart ang mga tasa, unya usa ka bag-ong punto sa koneksyon ang makita sa mga tasa, sa mga setting mosulod usa ka linya sama sa smb: // user:[protektado sa email]/Xprinter_XP-460B. Kung diin, ang tiggamit usa ka tiggamit sa Windows, ang tiggamit kinahanglan adunay usa ka set sa password, ang pagtugot dili molihok sa usa ka walay sulod.

Kung nahuman na ang tanan ug nag-imprinta ang tig-imprinta og panid sa pagsulay, ang mga trabaho mahimong ipadala pinaagi sa console:

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

Sa kini nga pananglitan, ang label adunay mga sukat nga 100x100 mm, 2 mm ang gipili nga eksperimento. Ang gilay-on tali sa mga label mao ang 3 mm, apan kung imong ibutang ang gitas-on ngadto sa 103 mm, ang tape mobalhin, nga dili kombenyente sa paggisi sa label. Ang disbentaha sa LPD protocol mao nga ang mga trabaho gipadala ingon sa usa ka regular nga tig-imprenta, ang ESC/P0S format wala ipadala alang sa pag-imprinta, ug ang sensor wala mag-calibrate sa mga label.

Dayon mahimo ka nga magtrabaho uban sa tig-imprinta pinaagi sa php. Adunay mga librarya alang sa pagtrabaho sa mga tasa, mas sayon ​​​​alang kanako ang pagpadala sa usa ka sugo ngadto sa console pinaagi sa exec ();

Tungod kay ang ESC/P0S dili molihok, nakahukom ko nga maghimo ug mga templates sa pdf gamit ang tFPDF library

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');

Pag-set up ug XPrinter label printer sa Linux sa VMware Workstation
Andam. Gigugol nako ang 2 nga katapusan sa semana sa pag-set up niini, nanghinaut ko nga kini mapuslanon sa usa ka tawo.

Source: www.habr.com

Idugang sa usa ka comment