QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6946|回复: 5
打印 上一主题 下一主题

DIY系列之——某校图书证条形码制作

[复制链接]
字体大小: 正常 放大

4

主题

2

听众

664

积分

  • TA的每日心情
    奋斗
    2014-5-26 02:05
  • 签到天数: 48 天

    [LV.5]常住居民I

    自我介绍
    最大的特点就是没有特点

    群组数学建模培训课堂1

    群组Matlab讨论组

    群组数学建摸协会

    跳转到指定楼层
    1#
    发表于 2011-9-28 18:30 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    DIY系列之——某校图书证条形码制作
      ]5 d, ^6 [7 G6 u* N% v
    2 x% Z/ l7 T; J6 W- p7 u小谷同学 2011/9/25
    8 ~; A7 u1 c  l9 v& @, L8 n. t2 k0 _9 c( u# S( |$ Q' Q& U2 d
    摘要
    : s2 K9 m, U* b" k
    " M' S9 @2 m; s( \* O! K关键词: 条形码% s, J0 I. p& c2 ]( w

    8 ^% u8 k, J( K9 n/ z* ]由于印刷质量问题和长期的使用,某些同学的读书证可能会产生读卡不灵敏现象。为了便于解决这些问题,本文给出某校图书证上条形码的编码规则,并给出由这些规则生成条形码的过程。最后本文对条形码在日常应用中可能出现的问题进行了分析,并提出相应的解决方案。
    % q# s% [8 W6 F1 h& V
    1 t5 {) E# m/ O: ~6 I目录# d7 ~0 N8 D/ O  k

    1 [/ D# A) l' B  Y1 L1.某校图书证编码规则
    ; [9 U: {8 w" B- G1 b. w1 Y4 u! @  z, i5 U! D
    2.条形码制作的过程
    0 U2 z5 B% I; N2 C0 G. M' m& J/ w4 J% E
    3.打印与测试
    5 q5 X9 u/ c$ d
    7 o. R) o9 L+ ^; |& E9 v4.扩展应用# D2 _/ h" j6 v' S% y: }

    8 W" j7 q, g8 p/ W3 m5.关于本例的一些思考
    " K- G! T2 Z  q+ m- D5 n$ T" u$ b0 t3 `
    6.免责声明与使用注意事项
    4 T+ m  ]5 o7 A
    % N2 r1 [/ u0 y# ]2 g5 Q7.参考文献
    " F- J! Y# O5 f+ t! k3 ~1 D2 }/ d3 q( ]& H0 o6 M1 \
    8.附录) |9 w- \" u( t. d
    ! b; L* K( ~6 U* [" _) i
    8 Q2 F2 X6 _$ s( t- q8 c

    2 }6 b  p: b" _) R5 j' e" M. V& d$ {- Z: l+ H4 I. x, _
    条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。有关条形码的更多资料参见文[1]。3 z2 H: i( ]/ W. W
    . n7 G9 ^: L  V; G1 d
    在日常生活中,我们不可避免地要接触大量的条形码,其中最常见的就是图书证了。而某些同学的图书证经常丢失。此外,某些同学的图书证由于缺乏保护,会频繁出现录入不灵敏现象。于是在谴责图书证的印刷质量之余,动手DIY一张图书证,自己进行质量控制,则可以使其更加灵敏地识别,大大减少进入图书馆的时间,大大缩短借书时刷卡的时间,提高学习和工作效率。图书证中携带关键信息的就是条形码,于是DIY的重点也是如何得到对应的条形码。
    3 D" [/ h* q: t" D; ^' b+ I2 a* o
    1.某校图书证编码规则
      z0 y8 c5 |" Y  L$ d+ i0 {8 H4 B& c1 D+ t
    由于所使用的编码方式不同,在了解常用编码规则(参见Internet)的基础上,必须通过对特定图书证的观察才可得出其特殊的编码规则。本文通过,对一种常见的图书证的观察,得出其编码规则如下:
    . U, z5 Q, J( c: `( _  H
    1 @- e# v) V! j, m3 r①该条形码部分由两种不同宽度的黑白条组成,是一种类code39编码方式;我们假设宽条代表1,窄条代表0;并假设在最后多一个白色宽条,以便使黑白条码的个数相等,方便程序处理。
    9 m2 G' \7 `  Z( l1 U4 N5 H% q7 I
    2 r! N0 h- L0 l# r( U" J  K0 o" d②图书证的白色条码都是一样的,分为以下三部分:
    ; o+ [. I+ h9 w6 J. s% w" }: Z" P! ^) B' P
    1)起始部分:10001;2)数据部分:13个01001;3)终止部分:10001,与起始码一致。) W/ K3 d7 ~4 v% u
      \( c5 T, L, _6 Z% G
    ③图书证的黑色条码是携带学号信息的关键,分为以下三部分:3 `2 |3 e6 R6 K0 F; j5 K" R
    , |6 C, m/ x8 a+ a
    1)起始部分:00110;
    ; H% C. E6 \- m' Q: `$ K
    6 y$ N$ O; i1 r4 |5 {# k2)中间部分:13个数字(即学号12位+图书证序号),每个数字对应的代码如表一所示;
    # y3 n+ E# O+ }  [  F0 u4 ]8 T6 w: R
    表一 某校图书证号每个数字对应的代码0 H1 s( w1 b7 B" N. @) @

    % D$ q) F- |+ \  s数字 代码 代码数字来源 数字 代码 代码数字来源 9 X7 i7 D7 F7 X/ l
    1 10001  1:0001                     6 01100 6:0110
    0 T' j2 Y& Y! r% m/ J7 a2 01001 2:0010                     7 00011 8:1000
    % _, B# h' P% q/ `  c3 11000 3:0011                     8 10010 9:1001 2 q$ [$ i  j( y! R- H/ w
    4 00101 4:0100                     9 01010 10:1010 / F# S4 e6 @( f& Z$ i; H; o
    5 10100 5:0101                     0 00110 12:1100                    
    7 X" [5 K) N* }1 _, q9 Q* a
    ' _! i# R6 o$ V; F0 n8 @, V说明:每个数字由五个黑条组成,两宽三窄;代码前四位是数字的8421码的倒序,由于最多只能出现两个宽条,于是一次选取最多只出现两个1的8421码作为序号的代码;代码的最后一位用以校验,凑齐“两宽三窄”。) J* ~2 F& g, V/ Y7 M. G

    1 [, o) v- T( s2 u# |3)终止部分:00110,与起始部分以及数字0的代码都一致。% _: s& h* H3 ~
    ' [: f% X' Y* p
    2.条形码的制作过程2 p; ~' F& K, v) M+ w- E5 y" ]

    ) C3 D/ w( w! h6 X黑色和白色可以用二值图像来表示,于是我们的关键是如何得到与条形码对应的二维矩阵。+ W3 u/ d) i8 t3 ^5 S* ^; u
    * H  f) h# n* s+ Z
    定义窄条即代码0的像素宽度为w,宽条即代码1的像素宽度为2w(一般取w=1即可);定义二维矩阵在黑色像素点处值是0,在白色像素点处值是1。此立即上得出与学号对应的条形码的二值图像的矩阵。
      Y9 ~) m+ d* S# y$ D
    " o% i" f: t8 [' M" m* H2 n* l2 N/ s条形码效果如图所示(程序代码见附件所示)。5 N2 x# D% K7 c6 e2 Q" B& O% }
    1.png 4 z# s" w, v/ q8 @: v3 h# A
    图一 所得条形码效果图( I, G! l+ Y% C$ v0 x6 _6 j4 B
      _: O! a# T8 u( c- i
    3.打印与测试
    3 |+ B6 j1 s- P& C8 f# r" w( s9 Q, C; z. _, _) J
    有的制造商在批量打印图书证时不太用心,加上可能设备老旧,所以难免会使某些同学的图书证出现杂纹等印刷质量问题。
    8 U" S0 b, T: S
    % E1 v2 v' u7 H& p, e( z因此,在DIY的过程中,尽量采用分辨率较高的打印机。对于分辨率较低的打印机,通过修改程序,扩大条形码的宽度,也可打印出质量上乘的条形码(本文测试时采用HP Color LaserJet 2820彩色激光一体机)。1 A; I0 v9 f# p/ e, ?5 {
    - \) n% g! A0 q7 p7 d2 E
    为了方便进行测试,本文打印出不同大小的条形码。( K  t# p, g, F6 Y
    5 _$ v. x  F7 S! w  t) F3 X! d3 D
    测试一:将其用透明胶带粘在硬纸板上。0 a& n3 H5 ~0 u' B3 L! c
    $ s. i! _# g" @) v+ E
    结果令人遗憾,读卡机根本不识别。通过与图书证比较发现:) G& M0 I- q. V5 Z1 n' I

    3 ^. A1 M" ]  z- c图书证正面的塑胶反射能力很弱,在灯光下几乎看不到灯在其上的虚像;而透明胶带的反射能力很强,可以地清楚灯地虚像。
    7 R$ g, \7 A* w9 v6 c0 Q3 e: x0 f. ]% }* f; a! V
    测试二:找到原因后进行,将与原图书证同样的大小的条形码用胶水贴在硬纸片上,结果顺利该校图书馆通过门禁。We are in now!!
    . C* B; o; L) e, x4 b" g  ^6 x* q* u: }" f4 F- n( X0 B, u7 @: Z
    效果如图二所示。
    5 k6 U) k" F7 W% l. b 2.png
    + ?0 s6 _7 g" C& c! G. N4 i4 f; F图二 打印效果图' f6 C$ z0 r7 m7 z
    测试三:用打印出的不同大小的条形码逐一进行测试,只有在一定的大小范围才可以通过测试。这说明了,条形码扫描器(注:本文使用的是全角度扫描器,其通过光学系统产生多条扫描线)是有一定的大小识别范围的。
    ; P0 H, ?" X+ r7 ?, B+ \9 ^  d: m; Y- I, @! q: G8 k! P7 A* w
    4.扩展应用6 o' s% T5 A- W: A5 V" i4 n

    6 U* [9 h2 ~- Y- W为了达到逼真的效果,我们做出了图书证模板(MATLAB版),该模板根据用户提供的证号、系部和姓名、照片、字体等信息,自动生成可供彩色打印的图书证如图三。
    ( E8 d% P3 a4 ?/ }$ [# z 3.png
    ! b' T, {% a( `& ~# v. ]图三 可供彩色打印的图书证1 @+ _3 e6 y- ~: ?9 [$ x0 a/ N% Y" F0 R
    3 ^6 o8 U2 o' H+ D5 A; w" \
    过后,我们会给出相应的网页版、C++版、VB版等等。
    2 Z8 A9 A: P6 L+ Z
    # z6 F/ v3 B  Y4 B% \. P' o# Z& U+ K2 e. V5.关于本例的一些思考1 {3 g; X  \% I; ~
    1 Z$ U3 _5 n# v$ f$ t; R# W/ r
    由相关文献,可知条码技术具有以下优点:
    & P( k' h+ r! J' D" W* a! L
    $ b4 M( O& m- }, `" `6 Y8 Y2 B  1)、输入速度快; + S4 T+ u3 v8 f1 ~' V

    " y9 m* f% u, ^8 p  2)、可靠性高;
    # l8 o* V2 d7 N+ M
    6 ?4 E1 N' G' q+ N) a: f) T  3)、采集信息量大;7 N3 P) L$ }. E  _& ^5 m2 P

    : L1 ^  J! g' G* ?  4)、灵活实用;; d  b" [0 y5 h
    ' V; _1 k8 |+ N6 G/ q+ P" R
    5)、条码标签易于制作: E  B2 @  v2 X( _( O$ y8 Z. U
    ( L# C1 w! f, z+ j! K( |+ l' v
    6)、识别设备操作容易,不需要特殊培训;
    2 n: D" I7 j$ U) W/ f) h% p% b; U2 }# Q7 P# ~$ M6 j
    7)、设备也相对便宜。
    : p  w7 q: a4 z' c9 `3 T9 ?4 k: u6 `
    因此,在平时可以自己构造的加密的编码规则,利用现成的条形码扫描器,可以很快实现特定功能的组建嵌入式的或基于PC的条形码识别系统。
    - ]& f" l) Y/ {: F  U& n) U  r+ b3 d8 o) y( q5 K4 C* Q
    由本文看,尽管一维条形码在各个领域获得了广泛的应用,但其安全性值得商榷。于是,在安全性要求较高或者要求条形码携带更多信息的领域,人们普遍采用二维码。常见的二维码如图四所示(更多资料参照文[2])。5 S& v$ D; Q; w6 G  q3 O* L' S
    4.png
    5 d' j9 z  S. z% B* A7 m图四:常见的二维码8 u9 u/ S+ ~: I# z  T& ^$ y
    & M$ C* F1 Q6 p3 V
    6.免责声明与注意事项
      Y* E/ j  L5 w/ |: R$ H1 W% ^. k9 C* t0 ]
    版权所有,翻版必究。5 `9 e. j' o5 x) s0 j2 w9 D
    + e. ]7 F& ~6 j  R
    技术在于交流。本文旨在交流条形码制作技术,并为个人制作提供质量较为上乘的图书证的方法,非经相关方面授权,严禁用于商业用途。有不法分子由此牟利而产生的法律责任,与本人无关。1 U( A; F0 A7 F# B+ n/ ^
    : ~. |5 @8 b( b) D
    任何单位或个人认为本文可能涉嫌侵犯其合法权益,应向本文作者提出书面权利通知,并提供身份证明、权属证明及详细侵权情况证明。作者在收到相关法律文件后,将会依法尽快删除本文中违反法律的内容。
    + a' L8 H$ o' K8 y
    ! n9 y% w8 ?' y0 j9 Q+ p7.
    9 h6 S6 h/ _' c& U! E0 I参考文献
    ) K: R  H& p# P1 D1 L9 g) y3 h6 y9 {7 D9 J; t- o, Y) P
    [1]条形码—百度百科http://baike.baidu.com/view/13740.htm[2010-09-25], F! v3 }: ~, ~
    " i$ @; c- q8 \0 u; a
    [2]二维码—百度百科http://baike.baidu.com/view/132241.htm[2010-09-25]
    ! s) v0 b# Z9 n# \8 H( J3 Q
    9 r2 F2 v6 J. G8.; p8 r5 @9 _- u% x5 t; p+ o
    附录/ g- N& A; O: a) @- x) b; h2 z
    3 g/ Y5 O" S4 u. V/ J
    相应的MATLAB程序代码如下(该程序经过简单修改,可以写成函数的形式,更方便地进行各种编码规则的条形码的生成):# M" v, j1 S" _- g& _0 E0 }
    ; ?4 z2 h. z9 l7 J4 _
    %barcode.m
    1 r; g  |. ~2 J; W# n) y2 H( k2 E8 q9 y
    %生成学号a对应的条形码
    ( m: N* I- `& j
    - e; F: M/ j' t, }5 a6 B$ p0 K%2011/09/25 13:24 BY小谷同学* @4 Y, D/ J3 W/ u. ^
    & s9 C( c( A, y# w! z0 u% g
    a='1234567890123';%学号,自行更改1 }  P2 T& k2 _8 R# c4 ]
      [& ]: o1 L. Z' o
    Black_num=[1,0,0,0,1;0,1,0,0,1;1,1,0,0,0;0,0,1,0,1;1,0,1,0,0;
    7 d7 s; N- M+ \/ H0 H3 z8 v8 ^/ ?; r  e$ d% `& k
    0,1,1,0,0;0,0,0,1,1;1,0,0,1,0;0,1,0,1,0;0,0,1,1,0];%数字编码' [$ f/ j4 ^8 I0 I0 A  ~
    ; n7 r( R; @( L, c# S- @
    White_num=[0,1,0,0,1];%插入符的编码, V- x6 O* }+ l6 |  e# R

    * g" O/ l1 C& {%Black_SE='00110';) ^* `# V2 x3 Y. O# A

    / n- ]' P3 L, C%White_SE='10001';White_M='01001';
    ) m* M) u3 \9 O# Z, M# f. @
    ; J  i( n, B( ]# q) J3 xbarheight=30;%定义条形码的高度! G3 {& S3 ?: |/ p

    " U1 A0 d  y4 ?barwidth=1;%定义条形码的像素宽度9 x9 v# \2 S- {# J8 w4 x2 }

    4 x: [. c9 y, D; e1 M3 [8 o+ E
    . I9 _4 E$ R1 q3 R# r- X%可以对特定长度的输入进行控制,本文规定长度为13# i% C* o, D* r$ ^# A8 ^

    % q8 q! F; {0 `2 Eif length(a)~=138 Y6 j1 q' x' Y- ^( h
    $ j7 M6 f9 [# A  H, e. y6 l8 K3 U9 y
    " b( [+ F$ ~9 R, [9 y# P* q9 E
    error('图书证必须有13个数字');" {. B" ~% }- q) H) t. s, U- G# x

    ' K+ S9 T- _; X  A7 C% x: ?5 o! ]end
    4 {+ M. q) r! V+ Q5 e- i
      S6 q- K3 n  I) _( x. i
    " h1 K+ C1 J: Tbarcode_SE=[0,1,1,0,1,0,0,1,0,0,1,0,1,1];
    5 W& B" u8 W6 F0 K; Z  l8 x* B9 h, N3 ]  v
    %为方便,直接人工得出起始与终止部分的条形码
    ) ]# V0 ?# }4 ]" z; T. F% w$ e; Z# [; l
    %也可以由程序生成.8 B7 \; s, M& d, i3 Y# Q
    " b0 M& ~4 K$ r
    total=length(a)*(7+7);" A" v: }- O/ M" g3 I9 W# H

    - {% @. [" k7 \% s; j, U" |: G%条形码的总像素宽4 |- J) m$ |2 u5 o2 l9 ^
    : K  C7 A1 k$ d$ T
    %也可以不用求,因MATLAB提供的均是动态数组8 z& B- z+ }1 O8 c
    2 V" P* t- H; R
    s=1;%计数,记录5 C6 T9 I! x) H

    - ^  \. w9 S/ _# a- j" z3 H" T: r% ?- |. k" f
    %由于利用for语句容易出现不可预料的错误
    - L& Q1 r3 F& E2 c- R& B
    ; F, q! i0 ^. g  }7 I%大部分是数组的行标与列标的调用问题,于是采用while循环$ d9 p! Q* b/ S0 f) v
    , m" w0 `  d$ L. t
    %嵌套循环,得出数据部分
    : C; w8 U- D8 w, x
    # r; {5 F" w4 M( Ym=1;( c$ T4 A7 P$ l1 N6 i! s( W+ U
    ' u8 R* a6 h% V' p
    while m<14
    + l0 r: S' }. ^& ^( S  K4 C' g* {9 L6 f; A/ L) ^
    1 c; {8 U+ x$ [" Z  H& s1 n
    if a(m)=='0';/ X. G5 t6 r/ N

    ) i# C' g$ J7 Y" w1 e2 ~- V" j
    " ?3 T7 e" y9 l) h; a: ~t=10;
    9 \! N& ?0 @' j7 l- {% Y' r' |& Q1 N

    ( V6 m& Q9 E3 F& p& E%若为数字零,应该调用的下标是104 `$ g) u' e9 w* g
    5 H" t/ ^, a/ z
    3 {% v, x( \) D  Q
    else
    ' v; X# p) A8 Z' i, K/ G% Z
    / V# B1 a3 `# k( S9 I" C* }7 C) n" ~# b1 @4 N% n
    t=double(a(m)-48);
    . ~# P0 W; K" B5 z: V- q$ R$ d) e. G$ }  i4 L' S. U
    %由于输入是ascii字符,转换为整数需要减去30H,即48  o5 y" S% G- K" ]

    & i7 g9 Y. P0 Z! [! }" ]+ v4 v$ _3 ], {( d
    end
    , g9 R" f% Q  \* g2 F2 i' h
    # a0 }& ?* J9 W5 Y3 d  d7 F* ]% L) l7 g6 K
    n=1;%同样的while循环4 f( a6 G8 H' x9 y* i* Q; G6 X. e
    2 D" J+ q- e6 X
    " }9 w! ~" w/ W; W
    while n<6& r5 _+ m7 Q( @; k

    / P2 A7 o% _& P; v. j* }8 x
    . Z9 D. k" h, a  A3 S' p3 E6 jif Black_num(t,n)==0
    " `5 `3 C$ R2 \
    - h% ?( f2 I. [4 Z
    : N* N$ z8 @* D- Tbarcode_M(s)=0;8 b: J0 B+ j+ R

    , j1 P, {( M- L4 ~& ^2 C; A: m: k+ m' `$ C( u" O7 _; M
    s=s+1;
    7 c; u; g0 F5 v2 c2 s! S# ]9 @0 O$ `: X$ j( m/ U6 Q# u* |
    1 g- d) X- F5 @% U( i$ J" X
    else
    ! E9 e% t* j. I6 Q2 p
    5 K0 ~$ c! N5 ]! q& [( @& u# T% a5 C/ ?6 B7 n0 }3 |% h
    barcode_M([s,s+1])=[0,0];
    8 d/ f" f- f* n+ g1 t- U# e( r
    4 n  a& Q: h2 ?5 R* P. W7 o) d2 V2 Y. z. h
    s=s+2;8 c9 @! z9 ^3 n
    $ [; A. |; e4 o# n- N' ^3 z

    0 u/ Y; C& y6 tend
    " m: w- z; t# k: \2 e+ W
    % k. U& W  b6 W; c, G2 W$ l
    : M$ S5 k3 y# H4 n' cif White_num(n)==02 n; X4 U' Z0 V. q( Y' Z2 F
    2 G$ {% c( u( ~0 v9 l6 L

    / m( ]# u( O0 t3 \& Lbarcode_M(s)=1;. s6 d1 c- f" r  w
    $ m1 \' ?5 ?2 }; ~% k# W, d& M8 ?

    # C) G0 i8 B+ D+ K2 g. R2 }s=s+1;
    # |; W! b, F" D
    # ~. E# d4 ?: Z. k0 A/ f  ?( B$ p' _& T
    else
    2 O% Q6 |6 z! [. ~
    6 e5 I. G/ b3 Q" O5 j/ i3 P! W% h" g6 o* E: @1 k+ s
    barcode_M([s,s+1])=[1,1];
    9 z2 g) ?6 e* }1 u7 c4 W# T( s* u9 i8 k- c

    4 ^% T3 I) h! J1 Z0 S' ~) Os=s+2;# X0 p3 \1 E& S& D# }& K$ k! k

    . M9 Z0 U2 p: m" T5 r) y: p% N' ?7 a4 Z9 @4 \. l/ E! N
    end( \& b% J0 Y. F# [" |' o% o6 ^

    1 ~0 Q2 ?5 {/ e  b. r  @0 J8 }6 P& ^- c9 P
    n=n+1;
    7 Q) J& Z9 v1 k
    , ~& V# l$ L: ?% J& d
    ) |, K9 Q+ @; ~  ?+ ]' g5 pend6 w# J/ t  ?( q- j$ O% ^/ [
    ' {+ p4 j2 {/ d0 o5 B( L8 k
    m=m+1;
    8 P5 Z; E/ c3 D& Z6 B: F" f% Z; C  e  a  l. a
    end
    8 w( M" B1 o/ P6 k/ @! p- g* }  j% Y1 b* t
    ; H4 R+ s6 m  ]  B2 M. d! w4 O
    bcode=ones(barheight,1)*[barcode_SE,barcode_M,barcode_SE];5 I9 j7 ?4 J) k2 u: D+ Y& U

    1 h" F6 t( s; I6 W5 |1 l; k%将一位矩阵拉宽,生成给定高度的条形码对应的二值图像的矩阵8 e. D0 b; a6 ~9 u2 t5 F% z+ s
    ) {, w7 n6 E+ M* U  r" Y, L
    bcode=bcode==1;%将数组转换为逻辑数组(Logic Array)% |( y* J, F+ e

    . K' c3 I5 C  k9 y* I. F6 Rimshow(bcode)%显示所得到得条形码) ]' L5 q; y# P/ p; a9 j$ j7 F

    % E1 ~5 O3 o+ P! {& [) U# N+ s" E%然后可以自行存贮得到的条形码
    " e4 r1 _* `) _2 P* T2 T0 G8 R$ f
    %然后用PS等工具得出具有自己特色图书证啦# ?3 L& f5 m7 Y( A" B# k6 ~

    $ q" z" Y$ P1 V' x+ U2 g! m' ^! [7 N' l
    3 W! y9 m4 H; }7 {6 L/ |
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏3 支持支持0 反对反对0 微信微信

    0

    主题

    3

    听众

    6

    积分

    升级  1.05%

    该用户从未签到

    回复

    使用道具 举报

    lszf        

    0

    主题

    4

    听众

    12

    积分

    升级  7.37%

  • TA的每日心情
    开心
    2011-9-15 22:33
  • 签到天数: 1 天

    [LV.1]初来乍到

    回复

    使用道具 举报

    0

    主题

    4

    听众

    35

    积分

    升级  31.58%

  • TA的每日心情
    无聊
    2012-8-4 13:31
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码
    很强大啊,
    1 _2 K. P( F* ]' ?可惜首先我联想到的是可以用来制作假的书本条形码,用于还不见了的书,,我这是在犯罪吧?
    回复

    使用道具 举报

    4

    主题

    2

    听众

    664

    积分

  • TA的每日心情
    奋斗
    2014-5-26 02:05
  • 签到天数: 48 天

    [LV.5]常住居民I

    自我介绍
    最大的特点就是没有特点

    群组数学建模培训课堂1

    群组Matlab讨论组

    群组数学建摸协会

    freedomfox 发表于 2011-9-29 20:36 ) l) R% N! V9 V
    很强大啊,
    + t+ Z0 u- {2 f, |" `! I: \9 u可惜首先我联想到的是可以用来制作假的书本条形码,用于还不见了的书,,我这是在犯罪吧?{:3_ ...
    : B% v: v3 F+ K2 z
    可以,不过你的学校肯定有记录,一旦发现,后果很严重的;" Q1 {) O1 d. X$ B$ t+ P4 T
    目前我想到是:
    ) e9 d7 y5 z) m, I9 j! H4 T  e一、去周围学校的图书馆。
    ; x- J4 g( f! z" i" X二、自己丢的图书证自己做一个一模一样的来。
    , z2 ~% h/ ?( J6 }; o3 I! v7 L: Y三、将图片弄到手机上,然后用手机刷进图书馆,吸引眼球6 L/ O7 P0 j8 D/ D0 ^! `1 e9 N
    四、将来毕业再回学校,再做一个图书证进图书馆8 R! |  O, m7 ]" ?' G
    回复

    使用道具 举报

    书呆子 实名认证       

    5

    主题

    3

    听众

    415

    积分

    升级  38.33%

  • TA的每日心情
    擦汗
    2014-3-2 17:17
  • 签到天数: 82 天

    [LV.6]常住居民II

    2012挑战赛参赛者

    自我介绍
    热爱数学

    群组数学建模

    群组数学趣味、游戏、IQ等

    群组数学建摸协会

    群组数模讨论

    群组中国数模会长俱乐部

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-2 09:11 , Processed in 0.495278 second(s), 87 queries .

    回顶部