全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:12973
推到 Plurk!
推到 Facebook!

barcode code128 長度過長

答題得分者是:P.D.
jrsty
一般會員


發表:1
回覆:11
積分:7
註冊:2008-10-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-12-12 14:00:25 IP:60.249.xxx.xxx 訂閱
求救!!   小弟目前遇到一個問題

需要在不到7cm的條碼紙張上 列印出32碼的條碼...

有看過樣品 掃的出來資料 長度不到6公分

目前使用了在站上找到的barcode元件、也有抓條碼字型

但站上的barcode元件 似乎如果值為32碼... 再將壓縮參數調整到1 會讀取不到

而且條碼出來好像所有寬度都一樣.......但如果壓縮參數是2 長度會超過 但讀取ok(外觀正常)

因客戶需求 必須要用code128~~~

而小弟一直無法參悟code128的規則(拜過古狗和姿勢 )

有沒有大大可以協助幫忙呢??? 或是給個方向>< 急件~~~~

附件為條碼元件及字型檔~~~ (檔案為網上和站上抓取 如有侵權問題 請告知 會立即刪除)
編輯記錄
taishyang 重新編輯於 2008-12-12 14:03:17, 註解 刪除[求救]字眼‧
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-12-12 16:06:34 IP:61.67.xxx.xxx 未訂閱
1.這種問題不好解, 基本上要告知客戶, 這麼長的碼數又要在這麼短的標籤上列印, 治本之法就是選擇高解析度的條碼鐖, 一般市售的多在203dpi, 勉強壓縮到300dpi還ok, 建議這樣的規格最好使用 400dpi以上的, 當然價位上是接近 double 啦!

2.請新進成員先閱讀版規, 你發表的文章有關於資料庫嗎?
編輯記錄
P.D. 重新編輯於 2008-12-12 16:07:50, 註解 無‧
jrsty
一般會員


發表:1
回覆:11
積分:7
註冊:2008-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-12-12 16:27:16 IP:60.249.xxx.xxx 訂閱
該用戶用的條碼機有到305dpi 有測試過 在列印上ok 

資料的部分是有用到資料庫 但我有辦法把值抓到一個暫存的變數中

我目前的做法

資料庫的值->變數->元件->呼叫畫出條碼

但就卡在最大的問題了................ 壓縮率太高 該元件好像會沒辦法正確繪出正確的條碼圖

剛剛持續鑽研 目前覺得 有幾個方向 1.換元件 (手邊沒其他的 要再找過)
2.換方式 (改用條碼字型 自己對字串編碼 再加上始起碼和結束碼)

還有就是 聽說市面上 有些條碼機會附上dll檔 讓user去用 不知道有沒有大大有這方面的資訊能提供給小弟我呢??
編輯記錄
jrsty 重新編輯於 2008-12-12 16:30:48, 註解 無‧
johnpage
初階會員


發表:0
回覆:79
積分:40
註冊:2004-08-07

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-12-13 10:00:33 IP:118.167.xxx.xxx 訂閱
改用QR Code 二維條碼才能在妳說的大小內放入這麼多資訊
妳說的條碼大小 該公司應該有特殊的演算法 也就是說有特殊設計過
再者code128 是可以自己畫出來的 所已請閱讀code128規格書 即可
不需要使用元件

編輯記錄
johnpage 重新編輯於 2008-12-13 10:04:42, 註解 無‧
ANDY8C
資深會員


發表:114
回覆:582
積分:299
註冊:2006-10-29

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-12-14 11:22:35 IP:210.66.xxx.xxx 訂閱
 
您的問題,幾乎每月都有客戶反應,.....條碼長度超過 30 幾碼......這在各行業,常會遇到
我多年的經驗解法

1. 改用 2D 條碼(但條碼掃瞄器/解碼器,非常貴.....)
2. 改用更高解析度的條碼列印機,目前市面上常見的機器是 200,300,600 dpi
國產 300 DPI 的機器,1.5 萬的機器,已經很好用了
進口 300 的機器,約 2 - 4 萬, 600DPI 的機器約 6 萬吧

除了硬體的解析度外,耗材(碳帶/紙張)也可以選用較好的點的(碳帶價格可能差 2 - 3倍),
好的碳帶,印出來的線條,直線就是直線, 不會擴散...... 這一點坊間很少人討論,大家總是認為可以用就好
一分錢/一分貨

3. 若資料內容為純數字,客戶許更換碼型,改用 I 25 取代 C 128,條碼橫向寬度可以減少 1/4 以上

4. 紙張換寬一點的紙,解碼器 換用 雷射槍 或 改良型可 ROOM IN/OUT 的手握式CCD

5. 改用 code 128 的其他字形組...code 129a , code 129b , code128c 看看

建議
1. 不要用雷射或噴墨去印您的條碼, 雖號稱 600 DPI / 1200 DPI.....等,但是縮放比率是等比率放大
不符合條碼國際規範,若您的解碼器無修正功能,常印出一些無法被讀碼器辨識或辨識很久的條碼......
很多客戶都認為是讀碼器壞了,改換雷射槍就 Ok,說是雷射槍比好,其實應該是雷射槍的容錯能力較強...

2. 條碼原本就是專業的東西,印出來可以刷(被讀取),並不代表您的條碼就是符合規範.....現今條碼機列印機
已經很便宜了,可以考慮看看,相關產品, 請搜尋 " 條碼用品柑仔店" , pchome online 那家就是小弟的店,
若還有問題, 歡迎留言討論....
===================引 用 jrsty 文 章===================
該用戶用的條碼機有到305dpi 有測試過 在列印上ok

資料的部分是有用到資料庫 但我有辦法把值抓到一個暫存的變數中

我目前的做法

資料庫的值->變數->元件->呼叫畫出條碼

但就卡在最大的問題了................ 壓縮率太高 該元件好像會沒辦法正確繪出正確的條碼圖

剛剛持續鑽研 目前覺得 有幾個方向 1.換元件 (手邊沒其他的 要再找過)
2.換方式 (改用條碼字型 自己對字串編碼 再加上始起碼和結束碼)

還有就是 聽說市面上 有些條碼機會附上dll檔 讓user去用 不知道有沒有大大有這方面的資訊能提供給小弟我呢??
------
---------------------------------------
偶爾才來 KTOP ,交流條碼問題,在 FB [條碼標籤達人] 社團留言,感恩.
編輯記錄
ANDY8C 重新編輯於 2008-12-14 11:25:11, 註解 無‧
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-12-14 14:11:03 IP:61.67.xxx.xxx 未訂閱
你是自己畫barcode線條哦!
市售的支援 delphi的條碼機有 godex ez系列, TSC TTP 系列都有釋放DLL檔, 也都有在Delphi中如何撰寫的sample
建議你使用別人已處理好的函式來做會比較好
至於二維條碼, 不是吐槽, 實在是barcode scanner太貴了, 如果企業有很多點要用的話, 那真的是大失血
===================引 用 jrsty 文 章===================
該用戶用的條碼機有到305dpi 有測試過 在列印上ok
....
但就卡在最大的問題了................ 壓縮率太高 該元件好像會沒辦法正確繪出正確的條碼圖

剛剛持續鑽研 目前覺得 有幾個方向 1.換元件 (手邊沒其他的 要再找過)
2.換方式 (改用條碼字型 自己對字串編碼 再加上始起碼和結束碼)

還有就是 聽說市面上 有些條碼機會附上dll檔 讓user去用 不知道有沒有大大有這方面的資訊能提供給小弟我呢??
編輯記錄
P.D. 重新編輯於 2008-12-14 14:13:18, 註解 無‧
P.D. 重新編輯於 2008-12-14 14:14:46, 註解 無‧
jrsty
一般會員


發表:1
回覆:11
積分:7
註冊:2008-10-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-12-15 10:42:50 IP:60.249.xxx.xxx 訂閱
感謝各位大大的指導

但因為一些條件,硬體部分是沒辦法做調整的 (紙張、條碼機)

然後卡在對方要求是code128 目前小弟的有搞出一個還ok的方式

也順便提供出來給大家參考 雖然這個方向不是正確的

==========================================================================================================

目前小弟的解法是 用barcode元件繪圖至Image1上(可顯示可不顯示 stretch為false 但長寬需先調整為可以容納code128 碼長32的大小 )

接著再用一個Image2 將stretch調為true

然後Image2.Picture:=Image1.Picture 這方法夠痴吧 ><

接著只要注意縮放比例就可以 目前測試掃進電腦 可以讀的到資料

===========================================================================================================


但好多大大回覆....不知道分數該給誰............
編輯記錄
jrsty 重新編輯於 2008-12-15 10:44:26, 註解 無‧
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#8 引用回覆 回覆 發表時間:2008-12-15 17:19:34 IP:61.67.xxx.xxx 未訂閱
只要能達成目標就是好方法, 沒有痴不痴的問題的啦! 恭喜了, 有沒有這個榮幸可以分享你的code呢?
ANDY8C
資深會員


發表:114
回覆:582
積分:299
註冊:2006-10-29

發送簡訊給我
#9 引用回覆 回覆 發表時間:2008-12-15 22:21:13 IP:210.66.xxx.xxx 訂閱
還是建議您,用 條碼列印機來印製條碼 
您目前的用法僅是 "還" 可以用,存在不可預知的風險
且還縮放在 某個空間下....風險更高

CODE 128 的線條若全粗或全細的字偏多時,常常刷不過.....最好測一下

若您客戶入庫時,有時不好刷/甚至刷不到.....您的條碼列印系統可能會有責任

我因為發生過,被K過.....所以知道可能的結果....
MIS 是沒有績效的單位,但又必須承擔大責任,何必替老板省小錢,苦了自己






===================引 用 jrsty 文 章===================
感謝各位大大的指導

但因為一些條件,硬體部分是沒辦法做調整的 (紙張、條碼機)

然後卡在對方要求是code128 目前小弟的有搞出一個還ok的方式

也順便提供出來給大家參考 雖然這個方向不是正確的

==========================================================================================================

目前小弟的解法是 用barcode元件繪圖至Image1上(可顯示可不顯示 stretch為false 但長寬需先調整為可以容納code128 碼長32的大小 )

接著再用一個Image2 將stretch調為true

然後Image2.Picture:=Image1.Picture 這方法夠痴吧 ><

接著只要注意縮放比例就可以 目前測試掃進電腦 可以讀的到資料

===========================================================================================================


但好多大大回覆....不知道分數該給誰............
------
---------------------------------------
偶爾才來 KTOP ,交流條碼問題,在 FB [條碼標籤達人] 社團留言,感恩.
jrsty
一般會員


發表:1
回覆:11
積分:7
註冊:2008-10-31

發送簡訊給我
#10 引用回覆 回覆 發表時間:2008-12-25 13:57:04 IP:60.249.xxx.xxx 訂閱
小弟目前已研究出二種解決方式  第一種就是從根本解決 換報表系統

第二種就是我上述的 用縮的方式 而對方的硬體方面是有條碼機的

而至今測試也都還ok 不過回應一下版大~~ 因為這是客戶的case

程式碼不能直接給 但我會寫一個大概的範例 share出來~~ 感謝大家
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#11 引用回覆 回覆 發表時間:2008-12-25 14:00:11 IP:118.169.xxx.xxx 訂閱
記得說到做到喔 ^_^

===================引 用 jrsty 文 章===================


程式碼不能直接給 但我會寫一個大概的範例 share出來~~ 感謝大家
系統時間:2024-04-27 8:26:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!