因为春运,热心的网友wangbigbird发表了有名的北京地区2009年春运火车票购买指南
文中详细的介绍了火车票真假识别的一些办法,前几天在水木上发现一篇文章 北京假票一张,大家注意!
ICollection 从条形码的角度说明了这是一张假票:
发信人: ICollection (集合), 信区: TrafficInfo
标 题: Re: 北京假票一张,大家注意!
发信站: 水木社区 (Sun Jan 18 13:48:37 2009), 站内
这票明显是票骗子自己PS画出来的,
条码下面的数字中票号后面,里程前面的那34位数字多了1位。
而且这段条码与数字也不相符,第一个竖线就错了,应该是粗线的。
按照条码算法,这段条码应该是这样的,那张假票完全是瞎画。
【 在 ICollection (集合) 的大作中提到: 】
: 这票明显是票骗子自己PS画出来的,
: 条码下面的数字中票号后面,里程前面的那34位数字多了1位。
: 而且这段条码与数字也不相符,第一个竖线就错了,应该是粗线的。
: ...................
发信人: ICollection (集合), 信区: TrafficInfo
标 题: Re: 北京假票一张,大家注意!
发信站: 水木社区 (Sun Jan 18 14:01:48 2009), 站内
START_B
1位字母
CODE_C
6位数字
34位数字
4位数字
STOP
【 在 dudux (dudux) 的大作中提到: 】
: 什么叫128B+128C?
: 是说有字母的那段用128B其它用128C吗?
刚好,一直想了解一下条形码的知识就查阅了一些资料。各种条形码分类就不说了。
火车票的CODE128条形码规范,网上已经有了很好的文档:All About Code 128 Barcode
简单的说Code 128的条形码的组成为:
QUIET ZONE + START + DATA + CHECK CHAR + STOP + QUIET ZONE
Code 128 条形码的每一个数据字符由 11个黑白单位(modules)构成(STOP比较特殊由13个单位构成),3个条和3个间隔组成这11个单位,每个条或间隔的宽度为1-4。
Code 128 有 A B C 三组代码集,A-编码包含标准键盘字母、数字及控制符和特殊符号;B-编码包含所有标准键盘字母、数字及小写字母和控制符;C-编码0-99的数字和控制符。
一组条形码可通过CODE 和 SHIFT指定后续条形码的代码集。
火车票的R079252字符(前14位数字没在条形码中表示)如下所示:
<!-- [if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><!-- [if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:PunctuationKerning/>
<w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:UseFELayout/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!-- [if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]-->
<!-- [if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
</style>
<![endif]--><!-- [if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1051"/>
</xml><![endif]--><!-- [if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]--><!-- [if gte vml 1]><v:group id="_x0000_s1042" style="position:absolute;
left:0;text-align:left;margin-left:109.75pt;margin-top:106.8pt;width:251.75pt;
height:24.9pt;z-index:1" mce_style="position:absolute;
left:0;text-align:left;margin-left:109.75pt;margin-top:106.8pt;width:251.75pt;
height:24.9pt;z-index:1" coordorigin="2345,2361" coordsize="5035,498">
<v:line id="_x0000_s1043" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="2345,2361"
to="2345,2844" coordsize="21600,21600"/>
<v:line id="_x0000_s1044" style="position:absolute;mso-position-horizontal:absolute;
mso-position-vertical:absolute" mce_style="position:absolute;mso-position-horizontal:absolute;
mso-position-vertical:absolute" from="2349,2361" to="7380,2361" coordsize="21600,21600"/>
<v:line id="_x0000_s1045" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="3170,2367"
to="3170,2850" coordsize="21600,21600"/>
<v:line id="_x0000_s1046" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="3920,2361"
to="3920,2844" coordsize="21600,21600"/>
<v:line id="_x0000_s1047" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="4730,2376"
to="4730,2859" coordsize="21600,21600"/>
<v:line id="_x0000_s1048" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="5510,2376"
to="5510,2859" coordsize="21600,21600"/>
<v:line id="_x0000_s1049" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="6315,2367"
to="6315,2850" coordsize="21600,21600"/>
<v:line id="_x0000_s1050" style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" mce_style="position:absolute;flip:y;
mso-position-horizontal:absolute;mso-position-vertical:absolute" from="7095,2367"
to="7095,2850" coordsize="21600,21600"/>
</v:group><![endif]--><!-- [if !vml]-->
<!-- [endif]-->
<!-- [if gte vml 1]><v:line id="_x0000_s1029" style="position:absolute;
left:0;text-align:left;flip:y;z-index:4;mso-position-horizontal:absolute;
mso-position-vertical:absolute" mce_style="position:absolute;
left:0;text-align:left;flip:y;z-index:4;mso-position-horizontal:absolute;
mso-position-vertical:absolute" from="68.5pt,-.45pt" to="68.5pt,23.7pt"
coordsize="21600,21600"/><![endif]--><!-- [if !vml]--><!-- [endif]--><!-- [if gte vml 1]><v:line
id="_x0000_s1034" style='position:absolute;left:0;text-align:left;flip:y;
z-index:9;mso-position-horizontal:absolute;mso-position-vertical:absolute'
from="264.75pt,-.45pt" to="264.75pt,23.7pt" coordsize="21600,21600"/><![endif]--><!-- [if !vml]-->
<!-- [endif]--><!-- [if gte vml 1]><v:line
id="_x0000_s1033" style='position:absolute;left:0;text-align:left;flip:y;
z-index:8;mso-position-horizontal:absolute;mso-position-vertical:absolute'
from="225.75pt,-.45pt" to="225.75pt,23.7pt" coordsize="21600,21600"/><![endif]--><!-- [if !vml]-->
<!-- [endif]--><!-- [if gte vml 1]><v:line
id="_x0000_s1032" style='position:absolute;left:0;text-align:left;flip:y;
z-index:7;mso-position-horizontal:absolute;mso-position-vertical:absolute'
from="185.5pt,0" to="185.5pt,24.15pt" coordsize="21600,21600"/><![endif]--><!-- [if !vml]-->
<!-- [endif]--><!-- [if gte vml 1]><v:line
id="_x0000_s1031" style='position:absolute;left:0;text-align:left;flip:y;
z-index:6;mso-position-horizontal:absolute;mso-position-vertical:absolute'
from="146.5pt,0" to="146.5pt,24.15pt" coordsize="21600,21600"/><![endif]--><!-- [if !vml]-->
<!-- [if gte vml 1]><v:line
id="_x0000_s1028" style='position:absolute;left:0;text-align:left;flip:y;
z-index:3;mso-position-horizontal:absolute;mso-position-vertical:absolute'
from="27pt,0" to="27pt,9.8pt" coordsize="21600,21600"/><![endif]--><!-- [if !vml]-->
<!-- [if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600"
o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"
stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style="width:414.75pt;
height:189.75pt" mce_style="width:414.75pt;
height:189.75pt">
<v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image007.jpg" mce_src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image007.jpg"
o:title="part"/>
</v:shape><![endif]--><!-- [if !vml]--><!-- [endif]-->
序号
|
符号
|
Pattern
B S
B S B S
|
1
|
START
(Code B)
|
2
1 1 2 1 4
|
2
|
R
|
2
3 1 1 3 1
|
3
|
CODE
C
|
1
1 3 1 4 1
|
4
|
07
|
1
2 2 3 1 2
|
5
|
92
|
1
1 1 1 4 3
|
6
|
52
|
2
1 3 3 1 1
|
- 大小: 57.1 KB
- 大小: 72 KB
- 大小: 84.6 KB
- 大小: 73.8 KB
分享到:
相关推荐
在IT行业中,火车票条码扫描查询是一种常见的应用,它涉及到图像处理、条形码识别、数据库查询等多个技术领域。本项目"VC火车票条码扫描查询"是使用Visual C++(VC)作为开发工具,结合条码扫描技术,实现对火车票上...
例如,火车票的样式可能会有所不同,有的可能包含条形码或二维码,这时我们可以结合条码和二维码识别插件,以获取更多信息。另外,考虑到火车票识别可能应用于自动化购票、行程管理等场景,我们需要确保代码的健壮性...
速度超快,现在,买火车票的人越来越多,火车站的打印机一般都是用的条码打印机,他们的机器都是带切刀的 打印一张就切一下,价格非常昂贵,一般人买不起,而铁帮手火车票打印助手是一款非常小巧的打印软件,它具备...
火车票上采用的是PDF417码,这是一种多行条码,每行由起始码、左标区、资料区、右标区和结束码组成。PDF417码的特点在于能够存储大量的信息且具有较好的容错能力。具体来说,火车票上的二维条码包含了以下几个方面的...
二维码相较于传统的条形码(一维码),具有以下显著优势: 1. **信息容量大**:二维码能够存储大量的信息,包括图片、指纹、声音、签字、文字等多种类型的数据,极大地扩展了信息承载量。 2. **保密与防伪性能强*...
行业资料-交通装置-一种基于二维条码的火车票管理系统及其使用方法.zip
在火车票上,二维条形码通常包含了乘客的个人信息、车次信息、座位号等,方便快速扫描验证。 在C#中生成二维条形码,可以使用第三方库,例如ZXing.NET,这是一个开源的、跨平台的条形码解码库,支持多种条形码格式...
【标题】码上闪--条码比价购物...9、 二维码发票、火车票辨别真伪 10、 二维码快速上网、下载等功能。 11、 二维码名片识别功能 12、 二维码信息发布平台 13、 二维码宣传册 14、 二维码精准营销 15、 二维码证照防伪
您可以在工作站上扫描条形码以进入和退出。 功能性 登录后, 向我显示“票务”页面,在这里我可以选择购买火车票。 如果我点击添加到购物车, 我的钱包将会出现,并会要求退房。 当我点击结帐时, 我被带到条纹...
12月10日起,全国铁路系统火车票将实现从5.0版本到5.2版本的升级。新旧版本车票最大的区别,就是车票下方的一维防伪条码将变成二维防伪图案,防伪功能更强大。 二维码相关资料见:...
在生活场景中,条码技术常见于购物收据、商品包装、会员卡、身份证件、火车票、电影票等。 总的来说,智能传感器技术通过高效、准确的条码识别,极大地推动了信息处理和自动化流程的发展,它已经渗透到我们生活的...
二维条形码如QR码,其信息容量更大,不仅能存储文字,还可以包含图像和其他复杂数据,具有高速识读、全方位识读以及表示汉字等优势,广泛应用于工业自动化、身份证件、驾驶执照、火车票实名制等领域。 在物流行业中...
二维码也开始应用到很多场合,如火车票有二维码识别、网易的首页有二维码图标,用户只需要用手机扫描一下就可以看到手机版网易的网址,免去了输入长串字符的麻烦。 条形码的标准: 条形码的标准有ENA条形码、UPC条形...
例如,中国铁路系统升级后的火车票就采用了二维条形码以提高防伪能力。 3.1.2 磁卡技术 磁卡是一种存储字符和数字信息的磁性介质,常见于银行卡和交通卡等。磁卡上有磁条,包含多个磁道,用于存储用户信息。磁条...
二维码也开始应用到很多场合,如火车票有二维码识别、网易的首页有二维码图标,用户只需要用手机扫描一下就可以看到手机版网易的网址,免去了输入长串字符的麻烦。 条形码的标准: 条形码的标准有ENA条形码、UPC...
这种技术在火车票、身份证等领域的应用更为广泛。 2.3 磁卡与IC卡的应用 2.3.1 磁卡常用于银行卡和交通卡,其信息存储在磁条上,通过磁卡读写器读取。虽然成本低,但易受磁场干扰,信息安全性相对较弱。 2.3.2 IC卡...
例如,中国的火车票升级就采用了二维条形码来提高防伪能力。 3. **磁卡技术**:磁卡是另一种常见的识别介质,通过磁性涂层存储字符和数字信息。磁条卡常用于银行卡、交通卡等,具有存储容量相对较大的特点,分为...
在复杂背景下的二维码区域定位一直是QR Code二维条码解码过程中的难题之一。...火车票通过图像预处理得到可能是二维码的区域块,提取经图像处理后的二维码区域块图像特征并结合BP神经网络过滤出正确的二维码区域。