gpt4 book ai didi

javascript - 在 QR 码符号中存储 vCard 数据的最有效方法

转载 作者:行者123 更新时间:2023-11-28 00:04:58 25 4
gpt4 key购买 nike

使用 JavaScript 压缩 QR 码中的 vCard 数据的有效方法是什么?我尝试了 lz-string 库,但是当我尝试对包含非法 UTF-16 字符的 QR 码进行编码时出现错误。有更好的办法吗?

最佳答案

如果 vCard 旨在在开放应用程序(例如通用 QR 码阅读器)中读取,则您不能简单地压缩输入数据并期望解码器找出如何解压缩结果数据。

减少生成符号大小的一种方法是,通过将自己限制为大写和数字字符,确保编码器充分利用 QR 码的数字和字母数字编码模式(而不是切换到低效的字节编码模式)基本格式化符号(如果可行的话)。不过,您需要使用良好的 QR 码生成库来确定模式之间的最佳切换,以最小化内部数据长度,以便从该技术中受益。[*]

如果您还没有考虑将纠错级别降低到“L”。

最后,考虑使用更紧凑的 meCard 格式而不是 vCard。

如果预期用途是在封闭的应用程序中(尽管我看不到 vCard 的情况),您可以使用 GZIP 压缩 (RFC 1952) 并通过在数据前添加 ECI 001800 指示符来指示这一点。在扫描时,您可以通过将支持 ECI 的阅读器置于扩展 channel 模式来检测 ECI 001800 指示器的存在并在您的应用程序中相应地解压缩,从而可靠地确定 GZIP 压缩的使用。

[*] Barcode Writer in Pure JavaScript是一个 JavaScript 库,它可以对 QR 码的任何给定输入进行最佳编码,以提供尽可能小的符号。

关于javascript - 在 QR 码符号中存储 vCard 数据的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31440259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com