关于QR二维码的编码模式
typedef enum {
QR_MODE_NUL = -1, ///< Terminator (NUL character).
Internal use only
QR_MODE_NUM = 0, ///< Numeric mode
QR_MODE_AN, ///< Alphabet-numeric mode
QR_MODE_8, ///< 8-bit data mode
QR_MODE_KANJI, ///< Kanji (shift-jis) mode
QR_MODE_STRUCTURE, ///< Internal use only
QR_MODE_ECI, ///< ECI mode
QR_MODE_FNC1FIRST, ///< FNC1, first position
QR_MODE_FNC1SECOND, ///< FNC1, second position
} QRencodeMode;
举个例子,比如我编码的内容都是数字,就用QR_MODE_NUM,
比如用到中、日、韩文,就用KANJI
如果通过另一个 ECI,优化数据压实模式应使用的字节值,
而不是特定字符赋值。例如,如果从 30HEX 到 39 十六进制和
紧凑的字节值默认的字节值的数字或字母的等价物,应使用数字模式。
扩展的通道解释 (ECI) 模式
扩展的通道解释协议,定义在目标公司允许的输出数据流的解释不同
于默认字符集。ECI 协议在其他符号码有一个一致的定义。
ECI 提供解释的字节值,打印之前和之后在细节中编码方法。
微 QR 码符号不支持 ECI 协议。定义默认解释 QR 代码
2005 年 ECI 000003 代表 ISO/IEC 8859-1character 套。
使用其他字符集的国际应用程序应使用 ECI 协议。例如,默认解释的
QR 码是 ECI 000020,代表 JIS 8 和 shift JIS 字符集。
ECI 模式可以镶嵌 ECI 转义序列在这一点在数据中后, 紧接着按
另一个模式指示器 (例如: 高效的数据编码) 和剩余生效直到结尾
的消息或随后的 ECI 模式指示器。
数值模式是方式编码十进制数字 0 ~ 9 (从 30 十六进制 ASCII 39
十六进制)。通常情况下,10 位代表 3 个字符。
字母数字模式是进行编码字符集的 45 个字符,包括数字 0-10 的方法
~ 9 (ASCII 是从 30HEX 到 39 十六进制),26 个英文字母 A ~ Z
(ASCII 是从 41 十六进制到 5A 十六进制) 和 9 符号 SP,
$,%,*,+,-,。,,: (ASCII 是 20HEX、 24hex、 25HEX、 2A 2B
十六进制,二维六角、 2E 十六进制,2F 十六进制十六进制 3A 六角分别)。
通常情况下,11bits 表示两个输入的字符。版本 M1 微 QR 码符号不支持
字母数字模式。
在字节模式下,数据在每个字符 8 位编码。例如,可能为这种模式在封
闭系统国家或特定于应用程序实现 QR 代码 2005 年指定替代 8 位字符
集定义在 ISO/IEC 8859 适当 par。当指定替代的字符集,如果当事人想
要读取 QR 代码 2005年符号时,应通知适用的字符集中指定的应用程序或
通过双边协议。微 QR 码符号版本 M1 或 M2 不支持这种模式。
这种模式将根据 JIS 系统基于 JIS X 0208 日文汉字字符编码。
从 JIS X 2008 转换 JIS 值。详见 JIS X 0208 移编码表示形式。
13 位二进制码字表示每个双字节字符值。如果指定的 8 位字节模式的
字符集汉字模式可能则采用不毫不含糊地使用的字节值在范围 81HEX 至
9FHEX 和/或 E0HEX 到 EBHEX。那是因为阅读系统不是能够确定从传送
的数据是否这种字节值是一个双字节字符前导字节。当适当的序列的字
节值数据中发生时,使用汉字模式压实规则可能实现较短的码流。
(即前导字节在范围 81HEX 至 9FHEX 或 E0HEX,其后拖车字节在范围
40HEX 至 FCHEX,除了 7FHEX,EBHEX 或 EBHEX,其后 40HEX 至 BFHEX)。
M1 或 M2 微 QR 码符号版本不支持日文汉字模式。
QR 代码 2005年可以编码序列的混合所有模式上面所描述的数据。
微 QR 代码 2005年符号可以编码序列的混合数据由任何可用以上模式描述
此模式用于拆分数据文件来表示序列的几个 QR 代码符号,要求所有的符
号都可以读取和重建正确的顺序。每个符号必须要表明的长度此序列以及符
号的位置,并检查所有的可读符号属于同一文档的结构化追加标头。
微 QR 码符号不支持结构追加模式。
这种模式对特定行业或应用程序数据格式符号进行编码。在"第一的位置",
它指示符号一般规范。在"第二的位置",它表示特定的数据格式根据目标公司
FNC1 模式是提供给整个符号和不受后续模式指标。请注意"第一的位置"和
第二的位置"基于字符的位置在代码 128 符号,等效的方式使用时不实际位置
。微 QR 码符号不支持 FNC1 模式。
关于QR二维码的编码模式相关推荐
- 初识 QR 二维码(零)
提到二维码,想必大家每天都会接触到,扫码支付.扫码添加微信好友等都会用到.关于二维码的生成原理,网上确实有些介绍,但基本涉及到具体编码就一笔带过没有深入了.目前 Python 也有现成的模块可以调用来 ...
- Android OpenCV(四十):QR二维码检测与识别
QR二维码 QR码(英语:Quick Response Code:全称为快速响应矩阵图码)是二维码的一种,于1994年由日本DENSO WAVE公司发明.QR来自英文Quick Response的缩写 ...
- QR二维码的攻击方法与防御
Blackeagle · 2013/07/03 18:59 QR二维码(Quick Response Code)是由日本丰田子公司Denso Wave于1994年发明并开始使用的一种矩阵二维码符号.与 ...
- Aztec 条码和 QR 二维码
一个是有很多点的黑白方块,另一个是带有--更多点的黑白方块? 对于未受过训练的人来说, Aztec 条码和 QR 码在结构上看起来相似,但它们的设计和适用性却大不相同. 但这些区别是什么? 它们最常用 ...
- QR二维码掩码质量评价算法
这个二维码掩码选择评分算法简单但是切合实际,以及掩码的设计的算法,细思极恐!值得记录! QR二维码掩码技术: 原因:当二维码中黑色或者白色块过多,会导致二维码的信息识别困难和容易丢失.所以需要掩码对二 ...
- QR 二维码布局(五)
上一篇构建最终编码流程中,我们获取到最终包含数据码.纠错码和剩余字符的最终编码数据.接下来就是要最终的数据编码和其它必需的功能模块统一分配到 QR 二维码矩阵中.功能模块指的是不含数据,同时 QR 二 ...
- python用二维码共享文档_[源码和文档分享]基于Python的QR二维码的生成与识别程序...
摘 要 进入二十一世纪之后,高新技术产业得到了极其迅速的发展.计算机.互联网.物联网.云计算等领域的发展,使得整个社会的信息化程度极大提高.随着技术的不断成熟,目前的一维条形码已逐渐向二维码过渡.本课 ...
- 生成QR二维码图片示例
生成QR二维码图片的简单示例 QR二维码的生成,在生成QR二维条码中已经提及.不过上次是通过网站生成的,缺点是对网站的依赖.下面做了个调用zxing core实现生成QR二维码图片的示例.另外还可以通 ...
- C# QR二维码DEMO
QR二维码 二维码的一种 相关类库 ThoughtWorks.QRCode 第三方类库 DEMO功能 Encode 生成二维码图片 Encoding 编码 Correction Level 等级 Ve ...
最新文章
- 道阻且长,Libra 项目负责人长文回应一切质疑
- 周末免费玩VR!Rift玩家的福利:BlazeRush赛车游戏
- flowable对比
- paddlepaddle系列之三行代码从入门到精通
- 局域网络连接的计算机不全,WIN10局域网电脑和设备显示不完整
- linux的启动流程和加载程序
- 关于MVC与三层架构
- IT人才需要怎样的沟通表达能力
- 实现Mybatis接口模式下的数据库调用分离
- pytorch实现attention_Self-Attention手动推导及实现
- 自定义UITabBar的两种方式
- python-pptx---插入表格
- 分槽ALOHA协议仿真
- Spring Cloud Ribbon 全解 (1) - 总览篇
- win7无法访问win10计算机,共享服务,教您win10共享文件夹无法访问怎么办
- 怎么申请微信小程序流程_小程序发布需要什么资质
- iphone修改密码时服务器,iPhone 突然弹出窗口要求修改密码怎么办?
- 前端json数据的解析遍历
- 长岛县人民政府成功部署督查督办管理系统
- PointNet++:Deep Hierarchical Feature Learning on Point Sets in a Metric Space
热门文章
- mysqldatareader对象有多少个方法_血压的正常范围是多少?牢记这6个降压方法,有效地预防高血压...
- 1.Java语言概述
- 微信小程序中处理 获取用户地址的回调
- [BZOJ3669] [NOI2004] 魔法森林 LCT维护最小生成树
- 搭建hadoop的HA集群模式(hadoop2.7.3+hive+spark)
- 使用OpenCV提取不同颜色物体
- 在子类中调用父类的方法super
- 用虚拟 router 连通 subnet - 每天5分钟玩转 OpenStack(141)
- 转:ObjectInputStream类和ObjectInputStream类的使用
- 基于角色的权限设计方案