谁知道在PDF417条形码(CAC前面)中使用的EDIPI /CⅡ压缩方法是在哪里解释或记录的?
我找到的最接近的参考文档是这个文档:http://www.cnic.navy.mil/navycni/groups/public/@hq/@cacpmo/documents/document/cnicp_a282327.pdf,但它并没有真正解释压缩-将字符串转换为base-32似乎不会得到相同的结果。
显然,这是一个非常深奥的问题,但任何帮助都将不胜感激。
谢谢!
发布于 2012-12-27 03:05:04
我也有类似的问题,所以我写了这段代码。
Public function base32(stringin as string) as double
ref = "0123456789abcdefghijklmnopqrstuv"
stringin = lcase$(stringin)
x& = 0
if len(stringin) = 0 then base32 = 0: exit function
for n% = len(stringin) to 1 step -1
base& = (32 ^ num)
if base& = 0 then base& = 1
v = instr(1, ref, mid$(stringin, n%, 1)) - 1
if v < 0 then base32 = 0: exit function 'invalid character detection
x& = x& + (v * base&)
num = num + 1
next n%
base32 = x&
end function
public function mildate(stringin as string) as string
mildate = dateadd("d", base32(stringin), "01/01/1000")
end function发布于 2015-07-25 11:33:29
我有一份DoD官方文档的副本,它解释了条形码是如何布局的,但我相信它是在一个受限制的网站上。您和Matthew是正确的,压缩涉及到将以32为基数的数字转换为数字,但只有特定的数据元素才会被压缩,特别是任何可以被视为个人信息的数据元素(SSN、出生日期等)。您最好的选择是通过www.cac.mil获得CAC开发人员工具包(CDK)的副本。
https://stackoverflow.com/questions/10127988
复制相似问题