SwiftGS1Barcode 0.5.6

SwiftGS1Barcode 0.5.6

测试已测试
语言 SwiftSwift
许可 MIT
发布最后发布2022年2月
SPM支持 SPM

Toni Hoffmann 维护。



  • Toni Hoffmann

SwiftGS1Barcode

一个使用 Swift 编写的 GS1 条码库和解码器

Badge w/ Version Language iOS macOS Linux Code Coverage GitHub license Build Status

一个库,可以将 GS1 条码字符串解析为对象,并允许轻松访问 GS1 条码可能具有的属性。
支持大量常见的应用标识符(GS1 条码),但可以轻松地在运行时扩展以支持任何所需标识符。

欢迎贡献。

您还可以在 CocoaPods 上找到此项目,或可以使用 Swift 包管理器。

入门

解析如同以下这样简单

import SwiftGS1Barcode
// ...
let gs1Barcode = "01101234670417283002\u{1D}1721103110S123456"
let barcode = GS1Barcode(raw: gs1Barcode)
barcode.validate() // To check if you barcode is valid

print(barcode.gtin) // 10123467041728
print(barcode.countOfItems) // 2
print(barcode.expirationDate) // 31.10.2021
print(barcode.lotNumber) // S123456

高级使用

要将解析与初始化分开,我推荐使用如下代码

import SwiftGS1Barcode
// ...
let gs1BarcodeText = "01101234670417283002\u{1D}1721103110S123456"
let barcode = GS1Barcode()
barcode.raw = gs1BarcodeText
_ = barcode.parse()

要解析 自定义应用标识符,请使用以下代码

import SwiftGS1Barcode
// ...
let gs1BarcodeText = "90HelloWorld\u{1D}01101234670417283002\u{1D}1721103110S123456"
let barcode = GS1Barcode()
barcode.applicationIdentifiers["custom1"] = GS1ApplicationIdentifier("90", length: 30, type: .String, dynamicLength: true)
barcode.raw = gs1BarcodeText
_ = barcode.parse()
print(barcode.applicationIdentifiers["custom1"]!.stringValue)

有关如何设置应用标识符的示例,请查看 GS1Barcode 类

可用属性

以下属性目前被支持

ID 应用标识符 实验性支持
00 serialShippingContainerCode
01 gtin
02 gtinOfContainedTradeItems
10 lotNumber(批量号)
11 生产日期
12 到期日期
13 包装日期
15 最佳使用期日期
17 过期日期
20 产品变体
21 序列号
22 次要数据字段
30 项目数量
37 包含的单位数
310 产品重量(千克)
23n lotNumberN
240 附加产品标识符
241 客户零件编号
242 按订单定制变体编号
250 次要序列号
251 参考源实体

实验性支持表示这些属性正在被解析,但没有提供getter。您可以通过调用,例如 myGs1Barcode.applicationIdentifiers["additionalProductIdentification"] 来获取值。 另外,如果出现任何解析问题,实现可能会发生变化。

您可以通过将其添加到键/值字典中来添加自定义应用标识符

let barcode = GS1Barcode()
barcode.applicationIdentifiers["custom1"] = GS1ApplicationIdentifier("90", length: 30, type: .String, dynamicLength: true)

它们将被 parse() 函数自动解析。
您还可以自行为自己贡献并添加到 GS1BarcodeParser.swift 类中,或者如果您缺少某些内容,可以打开 issue

安装

Swift Package Manager(推荐)

打开你的项目并在Xcode中点击 文件 -> Swift Packages -> 添加依赖 并输入 [email protected]:xremix/SwiftGS1Barcode.git

CocoaPods

您可以通过使用 CocoaPods 在项目中安装 。将以下代码添加到您的 Podfile

platform :ios, '8.0'
use_frameworks!

target 'MyApp' do
	pod 'SwiftGS1Barcode'
end

另一种选择是将直接从 GitHub 源(或不同的分支)添加

platform :ios, '8.0'
use_frameworks!

target 'MyApp' do
	pod 'SwiftGS1Barcode', :git => 'https://github.com/xremix/SwiftGS1Barcode', :branch => 'master'
end

手动

可以将项目添加为 Git 子模块。只需将 SwiftGS1Barcode.xcodeproj 文件拖入您的 Xcode 项目中。
别忘了将框架添加到您的应用程序目标中

资源

该项目使用的一些资源。

GS1 解析

https://www.gs1.org/docs/barcodes/GS1_General_Specifications.pdf https://www.activebarcode.de/codes/ean128_ucc128_ai.html https://www.gs1.at/fileadmin/user_upload/Liste_GS1_Austria_Application_Identifier.pdf

CocoaPod

https://www.appcoda.com/cocoapods-making-guide/

Analytics