7 มิถุนายน 2555

[102] โปรแกรมสร้าง barcode ด้วย PHP และ SVG

เครื่องมือสร้าง barcode มีหลากหลาย ตั้งแต่ขายกันเป็นซอฟแวร์สำเร็จรูป จนถึง open source หรือไม่ก็เอา Font ที่แจกฟรี มาทำใน MSOffice ก็แล้วแต่สะดวก

สำหรับงานของผมคราวนี้เป็นการทำตามรูปแบบของฝ่ายคลัง ที่ต้องการเอา barcode พิมพ์ลงบนกระดาษ A4 แล้วไปแปะที่เก็บของตามต้องการ


ประเด็ดที่สำคัญในการออกแบบคราวนี้คือ ตัวแท่ง barcode ต้องมีความสูงกว่าค่ามาตรฐานใน Font ที่ให้มา (ผมใช้ Code 3 of 9 ที่แจกให้ใช้งานฟรี ซึ่งความสูงของแท่งนั้นไม่พอ) ดังนั้น คงต้องใช้ pdf หรือทำเป็นเอกสารอย่างอื่นที่มีความสามารถยืดความสูงของตัวอักษรได้

ผมเองมีข้อจำกัดเรื่องเวลา และ เครื่องมือในการออกแบบ คราวนี้เลยทำให้มันออกเป็น SVG (ใช้ Inkscape สร้าง template) ซึ่งเป็นไฟล์ภาพที่สร้างจากภาษา XML เลยแก้ไขกันแบบสบาย ๆ ไม่ยุ่งยากเท่า pdf ใช้เวลาเขียน code จนทดสอบให้ได้รูปแบบที่ต้องการประมาณครึ่งวัน เบราเซอร์ก็ให้ใช้ FireFox ซึ่งรองรับ SVG อยู่แล้ว

สร้าง Form ด้วย HTML JavaScript CSS
เมื่อกดปุ่มสร้างบาร์โค๊ด จะเปิดหน้าต่างที่เป็น SVG ตามรหัสที่ป้อนเข้ามา
เมื่อลองกำหนดหน้ากระดาษ และ Preview ดู ผลงานออกมาถูกต้องสวยงาม
คราวหน้าจะลองสร้างบาร์โค๊ดโดยจัดการด้วย CSS ดูแทน แต่คงต้องบังคับผู้ใช้ให้ใช้งานเบราเซอร์ที่เราควบคุมได้ ไม่งั้นเละ

ปล. เคยอยากเปลี่ยนแนวทางพัฒนาโปรแกรมที่ไม่ต้องผ่านเบราเซอร์ สุดท้ายก็ต้องกลับมาทำเหมือนเดิมทุกที แต่หลัง ๆ ออกแบบ CSS และปรับแต่ผ่าน Google Chrome ทำให้ชีวิตง่ายขึ้นเยอะ และจะง่ายกว่านี้ถ้าไม่มี ie

เกี่ยวกับเจ้าของบล๊อก

รูปภาพของฉัน

เป็นโปรแกรมเมอร์ที่ฝันว่าจะได้นอนเกาพุงไปวัน ๆ จนพุงลดกลายเป็นเอว ได้เป็นบุคคลที่มีความสุขที่สุดในโลกจนคนอื่น ๆ อิจฉา