การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation

ตัวอย่างการตั้งค่าใน CentOS โดยไม่มีเชลล์กราฟิก โดยการเปรียบเทียบ คุณสามารถตั้งค่าบนระบบปฏิบัติการ Linux ใดก็ได้

ฉันแก้ปัญหาเฉพาะจาก php ฉันต้องพิมพ์ฉลากด้วยข้อความตามอำเภอใจตามเทมเพลต เนื่องจากงานนี้ไม่สามารถพึ่งพาอินเทอร์เน็ตที่เสถียรได้ และงานอัตโนมัติส่วนใหญ่ทับซ้อนกับเว็บไซต์ เราจึงตัดสินใจทำงานกับเครื่องเสมือนบน VMware

นอกจากนี้ XPrinter ยังเหมาะสำหรับการมาร์กงาน ซึ่งติดตั้งใต้หน้าต่างได้ง่ายกว่ามาก ฉันเลือกรุ่น XP-460B ที่มีความกว้างของฉลากสูงสุด 108 มม.

การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation

เนื่องจากฉันไม่ค่อยได้ติดตั้ง Linux และเชื่อมต่ออุปกรณ์กับมัน ฉันจึงมองหาคู่มือการตั้งค่าสำเร็จรูป ฉันจึงรู้ว่าวิธีที่ง่ายที่สุดในการเชื่อมต่อเครื่องพิมพ์คือผ่านถ้วย ฉันไม่สามารถเชื่อมต่อเครื่องพิมพ์ผ่าน USB คำแนะนำในคู่มือไม่ได้ช่วยอะไร ฉันเพิ่งทำเครื่องเสมือนพังไปหลายครั้ง

  • เราดาวน์โหลดไดรเวอร์จากเว็บไซต์ของผู้ผลิต xprintertech.com ซึ่งรวมอยู่ในไฟล์เก็บถาวรเดียวสำหรับ Windows, Mac และ Linux

    มีการโพสต์ไดรเวอร์บนเว็บไซต์สำหรับอุปกรณ์หลายชุด ในกรณีของฉัน ไดรเวอร์เครื่องพิมพ์ฉลาก 4 นิ้ว. เมื่อปรากฎว่า XP-460B เลิกผลิตไปแล้ว ฉันจึงทราบว่าเป็นของซีรีส์ใดโดยอ้างอิงจาก breadcrumbs ของรุ่น XP-470B ที่คล้ายกัน

  • ติดตั้งเครื่องพิมพ์ใน windows เปิดใช้งานการแบ่งปัน

    การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation

  • สำหรับ Linux ไฟล์เก็บถาวรมี 1 ไฟล์ 4BARCODE นี่เป็นไฟล์ 2 in 1 ซึ่งเป็นสคริปต์ทุบตีที่มีไฟล์เก็บถาวร tar ที่แตกไฟล์และคัดลอกไดรเวอร์ลงในถ้วย ในกรณีของฉันจำเป็นต้องใช้ bzip2 สำหรับการแกะกล่อง (สำหรับซีรีส์ 80 มม. จะใช้ตัวเก็บถาวรอื่น)
    yum install cups
    yum install bzip2
    chmod 744 ./4BARCODE
    sh ./4BARCODE
    service cups start
    
  • ถัดไปคุณต้องเปิด localhost:631 ในเบราว์เซอร์ เพื่อความสะดวก ฉันตั้งค่าให้เปิดจากเบราว์เซอร์ใน windows แก้ไข /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>
    

    เพิ่มพอร์ต 631 ให้กับไฟร์วอลล์ (หรือ iptables):

    firewall-cmd --zone=public --add-port=631/tcp --permanent
    firewall-cmd --reload
    
  • เราเปิดลิงก์ในเบราว์เซอร์ด้วย IP ของเครื่องเสมือน ในกรณีของฉัน 192.168.1.5:631/แอดมิน

    เพิ่มเครื่องพิมพ์ (คุณต้องป้อนรูทและรหัสผ่าน)

    การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation

  • มี 2 ​​ตัวเลือกที่ฉันจัดการเพื่อกำหนดค่าผ่านโปรโตคอล LPD และผ่าน samba
    1. ในการเชื่อมต่อผ่านโปรโตคอล LPD คุณต้องเปิดใช้บริการใน windows (เปิดหรือปิดคุณลักษณะของ Windows) รีสตาร์ทคอมพิวเตอร์

      การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation
      ในการตั้งค่าถ้วย ให้ป้อน lpd://192.168.1.52/Xprinter_XP-460B โดยที่ 192.168.1.52 คือ IP ของคอมพิวเตอร์ที่ติดตั้งเครื่องพิมพ์ Xprinter_XP-460B คือชื่อเครื่องพิมพ์ในการตั้งค่าการแชร์หน้าต่าง

      การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation
      เลือกไดรเวอร์ 4BARCODE => 4B-3064TA

      การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation
      เราไม่ได้เลือกอะไรในพารามิเตอร์และไม่บันทึก! ฉันพยายามปรับขนาดฉลาก แต่เครื่องพิมพ์ไม่ทำงานด้วยเหตุผลบางประการ สามารถกำหนดขนาดฉลากได้ในงานพิมพ์

      การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation
      กำลังพยายามพิมพ์หน้าทดสอบ - เสร็จแล้ว!

    2. ตัวเลือกที่สอง คุณต้องติดตั้ง samba เริ่มต้น รีสตาร์ทถ้วย จากนั้นจุดเชื่อมต่อใหม่จะปรากฏในถ้วย ในการตั้งค่าให้ป้อนบรรทัดเช่น smb://user:[ป้องกันอีเมล]/Xprinter_XP-460B. โดยที่ผู้ใช้คือผู้ใช้ใน windows ผู้ใช้ต้องมีรหัสผ่าน การอนุญาตไม่ผ่านโดยว่างเปล่า

เมื่อทุกอย่างเรียบร้อยและเครื่องพิมพ์พิมพ์หน้าทดสอบ งานสามารถส่งผ่านคอนโซลได้:

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

ในตัวอย่างนี้ ฉลากมีขนาด 100x100 มม. โดยเลือก 2 มม. จากการทดลอง ระยะห่างระหว่างฉลากคือ 3 มม. แต่ถ้าคุณตั้งค่าความสูงเป็น 103 มม. เทปจะเลื่อน การฉีกฉลากจะไม่สะดวก ข้อเสียของโปรโตคอล LPD คืองานจะถูกส่งไปยังเครื่องพิมพ์ทั่วไป, ไม่ส่งรูปแบบ ESC / P0S ไปพิมพ์, เซ็นเซอร์ไม่ปรับเทียบฉลาก

จากนั้นคุณสามารถทำงานกับเครื่องพิมพ์ผ่าน php มีไลบรารีสำหรับการทำงานกับถ้วย มันง่ายกว่าสำหรับฉันที่จะส่งคำสั่งไปยังคอนโซลผ่าน exec();

เนื่องจาก ESC/P0S ใช้งานไม่ได้ ฉันจึงตัดสินใจสร้างเทมเพลตในรูปแบบ pdf ผ่านไลบรารี tFPDF

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

การกำหนดค่าเครื่องพิมพ์ฉลาก XPrinter บน Linux ใน VMware Workstation
พร้อม. ฉันหยุด 2 วันเพื่อตั้งค่า ฉันหวังว่ามันจะเป็นประโยชน์กับใครบางคน

ที่มา: will.com

เพิ่มความคิดเห็น