Javascript in nhãn mã vạch

TRƯỚC KHI TẢI XUỐNG PHẦN MỀM HOẶC NỘI DUNG KHÁC CÓ TRÊN TRANG WEB NÀY, BẠN SẼ CẦN XEM VÀ ĐỒNG Ý VỚI CÁC ĐIỀU KHOẢN VÀ ĐIỀU KIỆN BÊN DƯỚI. PHẢI TUÂN THEO CÁC ĐIỀU KHOẢN VÀ ĐIỀU KIỆN NÀY KHI SỬ DỤNG PHẦN MỀM VÀ NỘI DUNG KHÁC ĐƯỢC CUNG CẤP

  • Vui lòng xem lại và đồng ý với thỏa thuận cấp phép, README và/hoặc các tài liệu khác mà phần mềm và/hoặc nội dung của BIXOLON chứa trước khi cài đặt hoặc sử dụng
  • Bạn đồng ý chỉ sử dụng phần mềm và/hoặc nội dung với các kiểu máy mang nhãn hiệu BIXOLON tương ứng
  • Bạn đồng ý và thừa nhận việc sử dụng phần mềm của BIXOLON và các nội dung khác là rủi ro của riêng bạn
  • PHẦN MỀM và/hoặc NỘI DUNG ĐƯỢC CUNG CẤP "NGUYÊN TRẠNG". BIXOLON, VÀ CÁC ĐỐI TÁC CỦA BIXOLON KHÔNG VÀ SẼ KHÔNG CUNG CẤP HỖ TRỢ CHO HIỆU SUẤT HOẶC KẾT QUẢ BẠN CÓ THỂ ĐẠT ĐƯỢC BẰNG CÁCH SỬ DỤNG PHẦN MỀM Ở BẤT KỲ TRẠNG THÁI NÀO KHÁC TRÊN TRANG WEB NÀY.
  • Bạn đồng ý không sửa đổi, điều chỉnh, thay đổi hoặc dịch phần mềm hoặc nội dung được cung cấp cho bạn thông qua trang web này và cũng đồng ý không đảo ngược kỹ thuật, dịch ngược, phân tách hoặc cố gắng khám phá mã nguồn của phần mềm và/hoặc nội dung
  • Bạn đồng ý rằng phần mềm và/hoặc nội dung sẽ không được vận chuyển, xuất khẩu hoặc chuyển nhượng (kỹ thuật số hoặc vật lý) vào bất kỳ quốc gia nào hoặc sử dụng theo bất kỳ cách nào bị cấm theo luật xuất khẩu, hạn chế hoặc quy định hiện hành của quốc gia đó
Tải xuống

Nếu bạn đang sử dụng GS1 US Data Hub® để tạo GTIN, bước tiếp theo của bạn là tạo hình ảnh mã vạch và in hình ảnh đó một cách chính xác trên các mặt hàng của bạn. Để giúp đảm bảo rằng mã vạch của bạn sẽ quét chính xác và hiệu quả, điều quan trọng là phải tuân theo các nguyên tắc này

Máy in nhãn có thể hỗ trợ các ngôn ngữ lập trình như TSPL, ZPL, EPL, v.v. Hôm nay chúng ta sẽ tổng quan về ngôn ngữ TSPL. Chúng tôi có thể tạo nhãn bằng cách sử dụng các lệnh TSPL như TEXT, BARCODEQRCODE. Ví dụ: nếu chúng tôi muốn in nhãn có văn bản và mã vạch, chúng tôi sử dụng các lệnh này với các thuộc tính của chúng như vị trí hoặc kích thước và gửi các lệnh này tới máy in nhãn qua Bluetooth hoặc kết nối Nối tiếp

image

Ở phía bên trái, bạn có thể thấy các lệnh TSPL và nhãn được in ở phía bên phải. Bạn có thể tìm thấy tất cả các lệnh có sẵn tại đây, nhưng hãy xem xét một số lệnh để hiểu cách sử dụng TSPL

Tọa độ và kích thước trong dấu chấm

Cho dù đó là TEXT, BARCODE hay BITMAP, nói chung, tọa độ và kích thước đều ở dạng dấu chấm. Số chấm trên mỗi inch phụ thuộc vào DPI của máy in

Ví dụ, nếu máy in là

  • 203 DPI → có nghĩa là có 203 chấm trong một inch hoặc có 8 chấm trong 1 mm
  • 300 DPI → có nghĩa là có 300 chấm trong một inch hoặc có 11. 8 chấm trong 1 mm

Theo cái này thì ta muốn thêm mã vạch có chiều cao là 10mm, và máy in là 203DPI thì ta để chiều cao là 80 (10mm x 8 = 80 chấm)

Kích thước và khoảng cách của nhãn

Chúng ta cần cho máy in biết kích thước của nhãn như thế này

SIZE 4,1

Ở đây chúng tôi đã nói rằng kích thước của nhãn là 4x1 inch

Chúng ta cũng có thể đặt nó theo hệ mét (mm)

________số 8

Chúng ta có thể đặt khoảng cách là khoảng cách giữa các nhãn (GAP m,n)

TEXT0

Ở đây khoảng cách là 0 inch có nghĩa là nhãn liên tục

image

Chữ

Chúng ta có thể sử dụng lệnh TEXT để in văn bản trên nhãn. Chúng tôi có thể cung cấp vị trí, kích thước phông chữ, xoay, v.v.

TEXT2

Tham số

Sự miêu tả

x, y

tọa độ x và y

nét chữ

Nói chung, chúng ta có thể đặt 1-8 (1-nhỏ, 2-lớn hơn… 8-lớn nhất)

Vòng xoay

0, 90, 180, 270 theo chiều kim đồng hồ

phép nhân x và y

Hệ số tỷ lệ 1-10

căn chỉnh

1 trái, 2 giữa, 3 phải (tùy chọn)

Nội dung

nội dung văn bản

lệnh mẫu

Kết quả

TEXT3
TEXT4
TEXT5

image

mã vạch

Chúng ta có thể thêm mã vạch vào nhãn bằng lệnh BARCODE

TEXT7

Tham số

Sự miêu tả

x, y

tọa độ x và y

loại mã

128, EAN128, EAN13…

Chiều cao

Chiều cao tính bằng dấu chấm

con người có thể đọc được

0 - giá trị mã vạch (văn bản) không hiển thị
1 - văn bản được căn trái
2 - căn giữa
3 - right-aligned

Vòng xoay

0, 90, 180, 270 theo chiều kim đồng hồ

hẹp

Chiều rộng của phần tử hẹp tính bằng dấu chấm

rộng

Chiều rộng của phần tử rộng tính bằng dấu chấm

căn chỉnh

1 trái, 2 giữa, 3 phải (tùy chọn)

Nội dung

Nội dung của mã vạch

lệnh mẫu

TEXT8
TEXT9
BARCODE0
BARCODE1

Kết quả

image

Lệnh IN và KẾT THÚC

Sau khi xây dựng nhãn, chúng ta cần thông báo cho máy in rằng nhãn đã sẵn sàng để in. Chúng tôi sử dụng lệnh BARCODE2 để làm điều này

lệnh

Sự miêu tả

SIZE 50 mm,25 mm
BARCODE4
BARCODE5
BARCODE6

BARCODE4
BARCODE8
BARCODE9
QRCODE0

- Đặt kích thước nhãn
- Xóa vùng đệm
- Thêm văn bản
- In vùng đệm

- Xóa bộ đệm
- Thêm văn bản
- In bộ đệm hai lần
- Kết thúc chương trình<

Nó in ba nhãn;

Chúng tôi thêm lệnh QRCODE0 vào cuối, để báo cho máy in biết rằng chúng tôi đã in xong. Nếu không có lệnh này, máy in có thể không in hình ảnh cuối cùng trong bộ đệm

In bằng JavaScript (Nút. js)

Các lệnh đã tạo có thể được gửi đến máy in qua Nối tiếp hoặc Bluetooth. Để chứng minh điều này, tôi đã tạo một mã đơn giản bằng Node. js. Tôi đã sử dụng gói 'usb' để kết nối và gửi lệnh (Trên Windows, bạn có thể cần cài đặt trình điều khiển, để tìm hiểu thêm, hãy truy cập trang của gói)

const usb = require('usb');

const cmds = [
  'SIZE 48 mm,25 mm',
  'CLS',
  'TEXT 10,10,"4",0,1,1,"HackerNoon"',
  'BARCODE 10,60,"128",90,1,0,2,2,"altospos.com"',
  'PRINT 1',
  'END',
];

// you can get all available devices with usb.getDeviceList()
let device = usb.findByIds(/*vid*/8137, /*pid*/8214);
device.open();
device.interfaces[0].claim();
const outEndpoint = device.interfaces[0].endpoints.find(e => e.direction === 'out');
outEndpoint.transferType = 2;
outEndpoint.transfer(Buffer.from(cmds.join('\r\n')), (err) => {
  device.close();
});

Và kết quả

image


Tôi đã phải thu thập thông tin từng phần một về việc in nhãn khi triển khai tính năng này trên dự án POS & Inventory của Alto. Vì vậy, tôi viết bài này với hy vọng rằng nó sẽ là điểm khởi đầu cho một người nào đó trong tình huống tương tự