Barcodesoft PDF417 編碼器
PDF417 是一種高容量二維條碼,能夠在單一符號中編碼超過 1000 個英數字元,包括擴充 ASCII 字元。它採用里德-所羅門錯誤更正演算法,安全等級從 0(自動)到 9 不等——等級越高,條碼尺寸越大,但解碼錯誤率越低。Barcodesoft 的 PDF417 編碼器可與 Excel、Access 和 Crystal Reports 整合,透過 crUFLbcs.dll 程式庫提供分別用於 PDF417 和 MicroPDF417 的獨立介面。簡單的 `Encode` 方法會傳回十六進位代碼,搭配字型即可產生條碼;而彈性的 `EncodeCR` 方法則允許控制列數、欄數、安全等級、壓縮模式(文字、數字、二進位或混合)以及截斷選項。這使得 PDF417 非常適用於物流、證件和文件中的高密度資料儲存。
總覽
PDF417 是一種二維(2D)條碼編碼。它具有獨特的結構與龐大的資料容量。
PDF417 支援您在單一符號中編碼超過 1000 個英數字元,包含 ASCII 和延伸 ASCII 字元。
因此,PDF417 條碼是將大量資料編碼在單一符號中的絕佳解決方案。
PDF417 使用 Reed-Solomon 演算法進行錯誤修正。安全等級越高,PDF417 的尺寸就越大,解碼錯誤的機率就越低。若未特別指定,軟體將使用預設的等級 0。等級 0 代表自動安全選擇。
您可以將 Barcodesoft PDF417 軟體與 MS Excel、MS Access 和 Crystal Reports 整合。
該軟體還提供了 MicroPDF417 的編碼解決方案。crUFLbcs.dll 包含 IPDF417 介面。IPDF417 介面具有兩個方法:Encode 和 EncodeCR。
crUFLbcs.dll 同時也包含 IMicroPDF417 介面。IMicroPDF417 介面具有兩個方法:Encode 和 EncodeCR。
Encode 僅接受一個參數作為輸入。它會傳回十六進位碼形式的 PDF417。套用 bcspdf417 字型後,傳回的十六進位碼將會轉換為 PDF417 條碼。
Encode(strToEncode)
EncodeCR 接受七個參數作為輸入。它會傳回十六進位碼形式的 PDF417。套用 bcspdf417 字型後,傳回的十六進位碼將會轉換為 PDF417 條碼。
EncodeCR(strToEncode, index, MaxRow, FixedColumn, Security, CompactionMode, Truncated)
第一個參數是要編碼的字串。
第二個參數是一個整數型(Integer)變數。當設定為零時,它會傳回所有的字碼(codewords)。當設定為 1 時,它會傳回前 250 個字碼。當設定為 2 時,它會傳回次 250 個字碼,依此類推。
第三個參數是一個整數型變數。它用來設定 PDF417 條碼的最大行數(Max-Rows)。
第四個參數是一個整數型變數。它用來設定 PDF417 條碼的行數。
第五個參數是一個整數型變數。它用來設定 PDF417 條碼的安全等級。當設定為零時,代表自動安全選擇。安全等級的範圍為零到九。
第六個參數是一個整數型變數。它用來設定 PDF417 的壓縮模式。零代表混合模式,1 代表文字模式(Text Mode),2 代表數字模式(Numeric Mode),3 代表二進位模式(Binary Mode)。
第七個參數是一個布林值(Boolean)變數。它用來設定 PDF417 的截斷(Truncated)選項。
以下是 Barcodesoft PDF417 條碼軟體子的價格清單:
Barcodesoft PDF417 條碼字型定價
| 授權類型 | 單一使用者 | 5 使用者授權 | 10 使用者授權 | 站點授權 (Site) | 企業授權 (Corporate) | 開發者授權 (Dev) | 5 開發者授權 | 10 開發者授權 | 無限制授權 |
|---|---|---|---|---|---|---|---|---|---|
| 價格 | CAD299 | CAD399 | CAD599 | CAD799 | CAD999 | CAD1199 | CAD1399 | CAD1999 | CAD2999 |
在 Crystal Reports 中產生 PDF417 條碼
如何在 Crystal Reports 中產生 PDF417 條碼?
若要在 Crystal Reports 中產生 PDF417 條碼,请使用 Barcodesoft UFL 程式庫中的 BCSPDF417EncodeCR 函式建立一個新的公式欄位。將您的資料庫欄位作為參數傳遞,將該公式欄位放置在您的設計畫布上,並套用 BcsPdf417 字型系列。
-
步驟 1:確定 SAP Crystal Reports 的位元版本並註冊 DLL
確定您所使用的 SAP Crystal Reports 版本的位元(32 位元或 64 位元)。SAP Crystal Reports 2008 至 2016 為 32 位元,而 SAP Crystal Reports 2020 和 2025 則為 64 位元。
針對 64 位元 Crystal Reports (2020 / 2025):
以系統管理員身分執行命令提示字元並執行:
cd "C:\Program Files\Common Files\Barcodesoft\FontUtil"
%systemroot%\System32\regsvr32.exe cruflbcs_x64.dll
針對 32 位元 Crystal Reports (2008–2016):
以系統管理員身分執行命令提示字元並執行:
cd "C:\Program Files (x86)\Common Files\Barcodesoft\FontUtil"
regsvr32.exe cruflbcs.dll
-
步驟 2:定位 Barcodesoft UFL 函式
在 Crystal Reports 中,依序展開函式總管階層:函式清單 ⇒ 其他函式 ⇒ COM 和 .NET UFL (u212com.dll) ⇒ Visual Basic UFL。按兩下 BCSPDF417EncodeCR 函式。
-
步驟 3:建立新的公式欄位
以滑鼠右鍵按一下公式欄位,然後從快顯功能表中選擇新增...。將您的新欄位命名為 "BcsPdf4171",然後按一下「使用編輯器」。
在 PDF417 編碼過程中,字串產生的碼字(code words)往往會超出預期。由於 Crystal Reports 限制公式欄位最多為 255 個字元,您必須將產生的 PDF417 碼字拆分到多個公式欄位中,並在單一文字物件中將它們串接起來。您可以透過執行此函式來檢查需要多少個欄位:
BCSPDF417FormulaNoForCR({Test.Data}) -
步驟 4:建立多個公式欄位
如果
BCSPDF417FormulaNoForCR({Test.Data})的傳回值大於 1,請依照下方所示按順序建立多個公式欄位。然後,將它們並排放在同一個文字物件容器中。BCSPDF417EncodeCR({Test.Data}, 1, 0, 0, 0, 0, 0)
BCSPDF417EncodeCR({Test.Data}, 2, 0, 0, 0, 0, 0)
BCSPDF417EncodeCR({Test.Data}, 3, 0, 0, 0, 0, 0)
參數位置說明:
第 1 個:要編碼的資料字串 | 第 2 個:序列區塊索引 | 第 3 個:最大列數 (MaxRow) | 第 4 個:固定欄數 (FixedColumn) | 第 5 個:安全等級 | 第 6 個:壓縮模式 | 第 7 個:截斷選項 (Truncated)
-
步驟 5:在報表中插入文字物件
將所有順序公式欄位拖放到這單一文字物件中。起初,您會在設計畫布上看到預設替代文字或十六進位碼。請不用擔心,一旦設定好字型,實際的條碼就會正常轉譯出來。
-
步驟 6:套用 BcsPdf417 字型
以滑鼠右鍵按一下文字物件容器,然後從快顯功能表中選擇設定物件格式。在「字型」選取面板中,選擇 "BcsPdf417" 作為目前使用的字型。
-
步驟 7:驗證 PDF417 條碼產生
按一下確定按鈕。替代字元將會立即轉換,並在您的報表範本檢視中顯示為結構化的 PDF417 堆疊式條碼。




