Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation

Mînakek ji bo sazkirina CentOS-ê bêyî şêlek grafîkî; bi analogî, hûn dikarin li ser her OS-ya Linux-ê saz bikin.

Ez pirsgirêkek taybetî çareser dikim: Pêdivî ye ku ez bi karanîna şablonek ji PHP-ê bi nivîsek kêfî etîketan çap bikim. Ji ber ku hûn nekarin di bûyerê de pêwendiyek Internetnternetê ya domdar bihesibînin, û piraniya karên otomasyonê bi malperê re hevûdu ne, me biryar da ku em bi makîneyek virtual li ser VMware bixebitin.

XPrinter ji bo nîşankirina karan jî maqûl e; sazkirina di bin Windows-ê de pir hêsantir e. Ez li ser modela XP-460B ya bi firehiya labelê heya 108 mm rûniştim.

Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation

Ji ber ku min kêm kêm Linux saz kir û cîhazên pê ve girêdide, min li manualên sazkirinê yên amade geriyam û min fêm kir ku riya herî hêsan a girêdana çapkerê bi qedehan e. Min nekarî çapkerê bi USB-ê ve girêbide; yek ji wan manîpulasyonên li dû şîretên di destanan de nebûn alîkar, min tenê çend caran makîneya virtual têk bir.

  • Ajokaran ji malpera çêkerê xprintertech.com dakêşin, ew ji bo Windows, Mac û Linux di yek arşîvê de têne

    Di doza min de, ajokar ji bo rêzek amûran li ser malperê têne şandin 4 ajokarên Labelê XNUMX inç. Wekî ku diqewime, XP-460B jixwe hate sekinandin; Min fêm kir ku ew ji kîjan rêzê ye li ser bingeha nanpêjên modelek wekhev, XP-470B.

  • Çapkerê li Windows-ê saz bikin, parvekirinê çalak bikin

    Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation

  • Ji bo Linux, arşîv 1 pelê 4BARCODE dihewîne. Ev pelek "2 di 1" de ye, skrîptek bash e bi arşîvek tar ku xwe vedike û ajokaran li qedehên kopî dike. Di doza min de, bzip2 ji bo pakkirinê hewce ye (ji bo rêzikên 80 mm arşîvek cûda tê bikar anîn)
    yum install cups
    yum install bzip2
    chmod 744 ./4BARCODE
    sh ./4BARCODE
    service cups start
    
  • Piştre hûn hewce ne ku vekin localhost:631 di gerokê de, ji bo rehetiyê ez mîhengek çê dikim ku ji geroka Windows-ê vekim. Biguherîne /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>
    

    Porta 631 li dîwarê agir (an iptables) zêde bikin:

    firewall-cmd --zone=public --add-port=631/tcp --permanent
    firewall-cmd --reload
    
  • Em zencîreyê di gerokê de bi karanîna IP-ya makîneya virtual, di doza min de vedikin 192.168.1.5:631/admin

    Çapkerek zêde bikin (hûn hewce ne ku root û şîfreya xwe binivîsin)

    Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation

  • 2 vebijarkên ku min mîheng kir, bi protokola LPD û bi samba ve hene.
    1. Ji bo girêdana bi protokola LPD, hûn hewce ne ku karûbarê di pencereyan de çalak bikin (Pêkhateyên Windows-ê çalak bikin an vekin) û komputerê ji nû ve bidin destpêkirin.

      Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation
      Di mîhengên kevçîyê de, lpd://192.168.1.52/Xprinter_XP-460B binivîsin, ku 192.168.1.52 IP-ya komputera ku çaper lê hatiye sazkirin e, Xprinter_XP-460B navê çaperê ye di mîhengên parvekirina windows de.

      Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation
      Ajokar 4BARCODE => 4B-3064TA hilbijêre

      Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation
      Em di pîvanan de tiştek hilbijêrin an xilas nakin! Min hewl da ku mezinahiya labelê rast bikim, lê dûv re çaper ji ber hin sedeman naxebite. Mezinahiya labelê dikare di karê çapkirinê de were diyar kirin.

      Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation
      Em hewl didin ku rûpelek ceribandinê çap bikin - kirin!

    2. Vebijarka duyemîn. Pêdivî ye ku hûn samba saz bikin, dest pê bikin, kasayan ji nû ve bidin destpêkirin, dûv re xalek pêwendiyek nû dê di kûpan de xuya bibe, di mîhengan de rêzek wekî smb: // bikarhêner têkevin:[email parastî]/Xprinter_XP-460B. Li ku derê, bikarhêner bikarhênerek Windows-ê ye, pêdivî ye ku bikarhêner şîfreyek xwe hebe, destûr bi yekî vala re naxebite.

Dema ku her tişt bi ser ket û çapker rûpelek ceribandinê çap kir, kar dikarin bi konsolê ve werin şandin:

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

Di vê nimûneyê de, labelê xwedan pîvanên 100x100 mm e, 2 mm bi ceribandinê hatine hilbijartin. Dûrahiya di navbera etîketan de 3 mm e, lê heke hûn bilindahiya 103 mm destnîşan bikin, kaset diguhezîne, ku jêkirina labelê nerehet dike. Nebaşiya protokola LPD ev e ku kar wekî çapkerek birêkûpêk têne şandin, formata ESC/P0S ji bo çapkirinê nayê şandin, û senzor etîketan kalibr nake.

Dûv re hûn dikarin bi çaperê bi php re bixebitin. Ji bo xebata bi qedehan pirtûkxane hene, ji min re hêsantir e ku ez bi rêya exec();

Ji ber ku ESC/P0S nexebite, min biryar da ku bi karanîna pirtûkxaneya tFPDF di pdf de şablonan çêkim.

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

Veavakirina Çapkerek Labelê ya XPrinter li Linux-ê li VMware Workstation
Amade. Min 2 dawiya heftê ji bo sazkirina wê derbas kir, ez hêvî dikim ku ev ê ji kesek re kêrhatî be.

Source: www.habr.com

Add a comment