2009-01-27 37 views
20

Tôi muốn có thể lưu trữ thông tin sản phẩm trong cơ sở dữ liệu cho một ứng dụng web, tôi quyết định sẽ tốt khi sử dụng mã vạch làm định danh sản phẩm tốt. Ngay bây giờ tôi chỉ muốn có thể lưu trữ biểu diễn số của mã trong cơ sở dữ liệu, vì vậy tôi cần phải tìm ra các lenghts, định dạng tối đa, v.v ...Bất kỳ tài nguyên tốt nào để bắt đầu với lập trình mã vạch?

Cuối cùng tôi muốn có thể tích hợp nó với một đầu đọc mã vạch.

Có tài nguyên nào tốt ngoài đó để giúp ai đó bắt đầu lập trình mã vạch không?

Trả lời

2

lots of different formats cho mã vạch.

Nếu bạn chưa gắn với ngôn ngữ lập trình hoặc barcode scanner vendor, nơi tốt nhất để xem là với các nhà cung cấp máy quét để xem những thư viện nào họ cung cấp. Bạn có thể tìm thấy một kết hợp tốt chỉ dựa trên những gì nhà cung cấp làm cho thư viện có sẵn cho nhà phát triển.

3

Tôi đã thực hiện một số ứng dụng sử dụng máy quét mã vạch và hầu hết chúng không yêu cầu bất kỳ chương trình đặc biệt nào. Thông tin đầu vào thường trông giống như chương trình đến từ bàn phím. Vì vậy, chỉ cần xây dựng các hình thức đầu vào dữ liệu của bạn để chấp nhận số tương đương với những gì được lưu trữ trong mã vạch và cho hầu hết các máy quét bạn sẽ chỉ tốt. Đó là cách dễ dàng hơn để hỗ trợ hơn bạn ban đầu sẽ nghĩ.

Mã vạch in mặt khác hơi phức tạp hơn và thường yêu cầu bộ công cụ đặc biệt. Có sẵn các phông chữ miễn phí, nhưng kết quả có thể là loại hit hoặc bỏ lỡ tùy thuộc vào những gì bạn đang mã hóa.

1

Hầu hết người đọc mã vạch đều khá đơn giản - theo như PC thì chúng chỉ là đầu vào bàn phím. Hầu hết các máy quét hiện tại có thể tự động đọc và giải mã một loạt các lược đồ mã hóa. Chúng có thể được cấu hình để gửi tiền tố/tiền tố đặc biệt để ứng dụng của bạn có thể phát hiện đầu vào khi đến từ máy quét và không chỉ bàn phím. Hầu hết các máy quét cũng có thể được cấu hình để cho bạn biết loại mã vạch được quét, nếu điều đó quan trọng đối với bạn.

Một số mã vạch chỉ là số và một số mã là chữ và số. Bạn có thể muốn chắc chắn rằng bạn thiết kế db của bạn để cho phép dữ liệu chữ và số, trừ khi bạn đã chết chắc chắn rằng bạn sẽ chỉ xử lý các số.

+0

Sẽ luôn có ý nghĩa hơn khi lưu trữ mã vạch dưới dạng chuỗi chứ không phải số. Nếu bạn cố gắng thực hiện thêm bằng mã vạch, tất cả điều đó có nghĩa là số kiểm tra bị hỏng. – joeforker

0

Vì bạn didnt chỉ định ngôn ngữ bất kỳ, bạn nên có một cái nhìn tại chương 12 của Real World Haskell

đó có thể không được chính xác những gì bạn muốn nhưng có thể là thú vị/hữu ích.

3

Nếu bạn sử dụng trình đọc mã vạch giá rẻ, hãy sử dụng Code128. Nó có thể mã hóa gần như tùy ý độ dài của số và/hoặc văn bản (số chỉ nội dung do dự trong 50% mã vạch nhỏ hơn).

Nếu bạn muốn sử dụng máy ảnh/điện thoại để sử dụng giải mã mã vạch datamatrix. Bạn có thể đặt khoảng 1kb dữ liệu vào mã vạch datamatrix. (Chỉnh sửa năm 2015: QRcode dường như từ từ giết datamatrix. Vì vậy, hãy đi cho QRcode thay vì datamatrix.)

Wikipedia có phạm vi bảo hiểm rất tốt về chủ đề của barcodes.

Plug Shameless: Nếu bạn quan tâm đến cách mã vạch được mã hóa và giải mã, bạn có thể muốn xem Thư viện Python miễn phí huBarcode thực hiện các sơ đồ mã vạch phổ biến nhất trong Python tinh khiết. Nó được công bố bởi công ty của tôi.

Đọc mã vạch cực kỳ đơn giản vì máy quét mô phỏng bàn phím. Vì vậy, bạn chỉ cần quét thay vì nhập. Chúng tôi có một số ứng dụng web nội bộ được sử dụng trên PC chỉ được trang bị máy quét và bi xoay - không có bàn phím nào cả. Không có trình điều khiển đặc biệt được yêu cầu cho một thiết lập như vậy.

12

Dựa trên một số dự án mã vạch, dưới đây là tóm tắt nhanh.

  1. Ứng dụng của bạn không cần phải biết hoặc làm gì khác vì bạn đang sử dụng mã vạch. Chúng chỉ là một đại diện của dữ liệu có thể được in ra. Các mã vạch và kích thước có thể được xử lý trong một lớp trừu tượng đóng gói mà bạn đặt lại với nhau khi bạn cần.

  2. Biểu tượng nói chung được xác định theo yêu cầu điểm, chẳng hạn như tiêu chuẩn của khách hàng, tiêu chuẩn ngành, v.v. Nếu để sử dụng nội bộ, Mã 39 thường được coi là mặc định tốt.

  3. Để in, hầu hết các yêu cầu có thể được xử lý bằng cách sử dụng máy in laser, nhãn cổ phiếu đặc biệt và phông chữ có thể tải xuống. Máy in đặc biệt cũng có sẵn từ một số nguồn, bao gồm Zebra, Intermec, vv; nhưng chúng đắt hơn, và bạn cần phải xem ra giấy độc quyền (đọc: đắt tiền) để in.

  4. Phông chữ. Google cho "phông chữ mã vạch" nói chung, nhưng một lựa chọn tiện dụng là Postscript barcode generator này sẽ in hầu hết mọi loại mã vạch trong hầu hết mọi kích thước trên hầu hết mọi máy in Postscript.

  5. Đọc mã vạch. Đối với việc đọc mã vạch với thiết bị đầu vào PC, thông thường điều này được thực hiện với trình điều khiển thiết bị cung cấp tương đương mở/đóng/đọc/ghi/ioctl tương đương hoặc bàn phím thay thế bên trong bằng bàn phím thực, do đó, đầu vào sẽ xuất hiện dưới dạng tổ hợp phím (tùy chọn với dòng thiết bị đầu cuối.) Các thiết bị không phải PC rõ ràng có các yêu cầu lập trình riêng.

5

Tôi đã thực hiện một số lượng hợp lý mã vạch.

Có hai mặt mà bạn sẽ phải làm quen.

Tạo/In các mã vạch

này sẽ bao gồm việc sử dụng một loại hình cụ thể của định dạng mã vạch. Mã 128 thường là phổ biến nhất, dễ đọc nhất đối với hầu hết các định dạng và in mã vạch nhỏ nhất. Để in mã vạch định dạng mã 128, bạn yêu cầu phông chữ, thư viện mà bạn có thể mua (idautomation, vv), và như vậy bạn sẽ tích hợp vào phần mềm của bạn để in mã vạch. Mã 39 cũng phổ biến (và thường là miễn phí). Nó in mã vạch thực sự rộng mặc dù dữ liệu của bạn được mã vạch trở nên lớn hơn.

Nếu bạn định in nhãn bằng mã vạch, bạn có thể muốn xem xét Máy in Zebra. Họ có một ngôn ngữ lập trình tuyệt vời được xây dựng trong (ZPL) cho phép bạn tạo ra tất cả các loại mã vạch nguyên bản - không cần phải mua phông chữ hoặc thư viện.

Điều quan trọng cần xem xét ở đây là khả năng đọc mã vạch. Bạn sẽ tìm thấy mã vạch kích thước quy mô khôn ngoan như một phông chữ. đảm bảo mã vạch của bạn có thể in trên phương tiện truyền thông của bạn, và có thể quét được (không nhăn, gấp, hoặc bóc vỏ, vv) sẽ rất quan trọng.

Reading/Sử dụng Mã vạch

mã vạch Đọc sách sẽ bắt đầu với một máy quét của một số loại. Bạn có thể nhận được những người sẽ đọc bất kỳ loại mã vạch và truyền mã vạch được giải mã như đầu vào. Vì vậy, nếu bạn có một trường được chọn trên màn hình của bạn, được quét trong một cái gì đó, nội dung của mã vạch sẽ được nhập vào trường đó cho bạn. Một điều khác bạn có thể làm là mua máy quét di động chạy hệ điều hành Palm hoặc cửa sổ ce/di động như máy quét được tạo bởi biểu tượng, psion teklogix, v.v. Có thể thiết lập để chạy một phần mềm tích hợp để nhận, gửi hàng các hệ thống sẽ thúc đẩy luồng công việc của bạn.

Tôi đã tìm thấy cuộc sống dễ dàng hơn nhiều bằng cách không tái phát minh ra bánh xe. Tôi đã sử dụng tất cả các sản phẩm tôi đã đề cập ở trên và thấy rằng chúng tích hợp tốt. Có một số thư viện mã vạch java tuyệt vời cũng được miễn phí, tôi chắc chắn bạn sẽ tìm thấy một cái gì đó cho. NET quá. Hãy cho tôi biết nếu bạn có bất kì câu hỏi nào khác.

2

Tôi đã phát triển Wallet Zero cho iPhone Wallet Zero Home Page, tạo mã vạch khớp với mã vạch trên thẻ khách hàng thân thiết. Trong khi làm việc trên đó, tôi tìm thấy một vài tài liệu tham khảo tốt & nguồn lực (một số đã được đề cập bởi những người khác):

0

Bạn phải check out the CueCat.
:-)

+2

Trong khi liên kết này có thể trả lời câu hỏi, tốt hơn nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo. Câu trả lời chỉ liên kết có thể trở thành không hợp lệ nếu trang được liên kết thay đổi. – phs

+0

Điều này có thể đúng, nhưng câu hỏi đã yêu cầu * tài nguyên * chứ không phải giải pháp. Bài viết của Joel đã 12 tuổi và dường như anh ấy đã làm việc chăm chỉ qua nhiều năm để duy trì URL của mình, vì những gì nó đáng giá. – pc1oad1etter

Các vấn đề liên quan