vCard 包含什么
vCard 是由带标签的行组成的纯文本,以 BEGIN:VCARD 开头,以 END:VCARD 结束。每一行是一个属性,比如格式化姓名、电话号码或邮箱地址。从手机或邮件程序导出联系人时,.vcf 文件里存的就是同样的文本。
用于二维码的最简 vCard 3.0 如下,每行一个属性:BEGIN:VCARD、VERSION:3.0、N:Lee;Jordan、FN:Jordan Lee、ORG:Maple Street Bakery、TEL:+15035550123、EMAIL:jordan@example.com、URL:https://example.com、END:VCARD。N 存放结构化姓名(姓在前,用分号分隔),FN 存放用于显示的姓名。
- N:结构化姓名(姓;名;中间名;前缀;后缀)
- FN:显示名
- TEL:电话号码,最好用国际格式
- EMAIL:邮箱地址
- ORG:公司或组织
- TITLE:职位
- URL 和 ADR:网站和邮寄地址
该用哪个版本
对二维码来说,3.0 版仍是最稳妥的选择,因为几乎所有手机都能读取。它由 1998 年的 RFC 2426 定义。4.0 版由 2011 年的 RFC 6350 定义,是现行标准,要求使用 UTF-8,但一些较旧的读取器处理它时不太稳定。
3.0 版要求同时有 N 和 FN,而 4.0 版只要求 FN。无论用哪个版本,VERSION 行都应紧跟在 BEGIN:VCARD 之后。
尺寸与扫描的取舍
vCard 每增加一个字段就多一些字符,字符越多,二维码越密,模块越小。只有姓名、一个电话和一个邮箱的名片,即使印在名片大小上也容易扫描。再加上邮寄地址、好几个号码、一段长备注或内嵌照片,就可能把二维码推到需要印得大得多的版本。
照片通常是问题所在:base64 编码的图片可能长达几千个字符,很难放进实用的二维码里。常见的替代办法,是编码一个指向托管的 .vcf 文件或联系人页面的短链接,这样二维码保持小巧,之后还能修改详情。