QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6881|回复: 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系列之——某校图书证条形码制作& B& ^# T, s% D7 k

    4 Q# x' ^1 k5 g. q+ B小谷同学 2011/9/25" ^9 ]/ J+ K4 d+ s6 [

    " \6 |: r* S, B) d# T2 G: w摘要7 k- x" p7 M7 x0 u. \' A* T9 k& ?

    3 o  g+ U. X6 b关键词: 条形码
    $ D- ~  j1 S/ u& W
    7 _2 C  }! L2 k" g+ W; n由于印刷质量问题和长期的使用,某些同学的读书证可能会产生读卡不灵敏现象。为了便于解决这些问题,本文给出某校图书证上条形码的编码规则,并给出由这些规则生成条形码的过程。最后本文对条形码在日常应用中可能出现的问题进行了分析,并提出相应的解决方案。  i( }& U/ H$ i
    & y' j4 ^1 j5 |* \$ p
    目录8 Q2 J, D" a6 q

    % x+ a( |  D% r4 P; p1.某校图书证编码规则+ G" o  S( T% ?
      t3 y2 y1 r& q* B( y1 ~/ ]
    2.条形码制作的过程
    + t: q" [* J% }* x
    3 L7 C7 M+ j1 d( {# w: u, x3.打印与测试, |+ i% @4 ?2 W5 a

    5 Z3 Z- p/ @; R! [8 `5 x4.扩展应用
    " @" Z7 y: V" @1 r5 s" @1 i& h
    5.关于本例的一些思考9 G# y& T+ P' J  F% ?9 f9 G

    3 z- c2 ~+ T# H  p. N6.免责声明与使用注意事项
    ! H1 _3 R/ `( ^; z5 A" `
    3 q8 l. k9 N5 ^* V8 y8 u& Z! k7.参考文献
    " A/ [5 g5 Q+ n3 x5 v" X5 {6 N/ g) Z% d( `0 K
    8.附录
    ' L5 U* @$ G8 d: Z; A2 }
    / I/ @% M! i2 K) a, P) G
    : L& F- k2 u8 |4 _- T, A# Q0 g) F
    / V! a9 Q. v/ Z. e4 D
    条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。有关条形码的更多资料参见文[1]。
    5 j! M3 B' P2 c* K- H# t
    2 z( R8 R) p, Q/ T在日常生活中,我们不可避免地要接触大量的条形码,其中最常见的就是图书证了。而某些同学的图书证经常丢失。此外,某些同学的图书证由于缺乏保护,会频繁出现录入不灵敏现象。于是在谴责图书证的印刷质量之余,动手DIY一张图书证,自己进行质量控制,则可以使其更加灵敏地识别,大大减少进入图书馆的时间,大大缩短借书时刷卡的时间,提高学习和工作效率。图书证中携带关键信息的就是条形码,于是DIY的重点也是如何得到对应的条形码。
    3 \5 _/ k/ l& X$ n
    $ C% Y7 V0 W' _( `% m8 w6 R1.某校图书证编码规则
    ' ?9 h8 v  w2 x" c$ N8 v/ e' T8 A
    3 |7 C5 D+ T- ^/ g; c由于所使用的编码方式不同,在了解常用编码规则(参见Internet)的基础上,必须通过对特定图书证的观察才可得出其特殊的编码规则。本文通过,对一种常见的图书证的观察,得出其编码规则如下:
    ! A" r! v' m1 r3 ~: v1 g: I. K! q: ~( `1 Z. b
    ①该条形码部分由两种不同宽度的黑白条组成,是一种类code39编码方式;我们假设宽条代表1,窄条代表0;并假设在最后多一个白色宽条,以便使黑白条码的个数相等,方便程序处理。* w: l. @9 J, d4 l$ ]

    . S. ]5 J5 I6 e" v' g; X②图书证的白色条码都是一样的,分为以下三部分:
    ' v0 A2 M$ b4 t" q/ P
    9 a& I6 f! t, g8 ~' I5 V+ P1)起始部分:10001;2)数据部分:13个01001;3)终止部分:10001,与起始码一致。
    ( A# [1 Y+ v: g- W* N. L9 {
    ) k8 r/ n% x- m/ Z4 t9 z③图书证的黑色条码是携带学号信息的关键,分为以下三部分:0 s9 e7 J8 m2 }  c8 b
    8 I; S- o+ E+ W9 k7 X1 M& e7 j
    1)起始部分:00110;
    + L" H8 `: \% Y9 y4 o8 \
    - V6 y* j1 d  I: T# d) F2)中间部分:13个数字(即学号12位+图书证序号),每个数字对应的代码如表一所示;
    ! r/ O5 N& X% }) Z" T9 ^8 n) E2 g7 T* s6 o3 T5 I
    表一 某校图书证号每个数字对应的代码
    , }: `: n' ?& v+ @& e, U
    + Q4 h/ U7 W; L* G9 _  ~/ W* j数字 代码 代码数字来源 数字 代码 代码数字来源
    ! D3 o9 g2 m; S6 c( k1 10001  1:0001                     6 01100 6:0110 4 Q9 _7 T' J, m/ N  ?& q1 Y6 M2 I3 j
    2 01001 2:0010                     7 00011 8:1000 ' V$ c8 G" ~) H# w
    3 11000 3:0011                     8 10010 9:1001
    * w# Y/ @0 {* |+ Q( Z" j- A4 00101 4:0100                     9 01010 10:1010
    4 a: X( z6 ?7 L' ~5 ^# X  v5 10100 5:0101                     0 00110 12:1100                    
    9 R( u  S' j5 @9 n) j7 Z" f7 c' O
    - {* N6 G4 }3 c, }% U: q6 \说明:每个数字由五个黑条组成,两宽三窄;代码前四位是数字的8421码的倒序,由于最多只能出现两个宽条,于是一次选取最多只出现两个1的8421码作为序号的代码;代码的最后一位用以校验,凑齐“两宽三窄”。: |2 l9 b" Q' B" T3 ^# U9 N  N2 g( q
    5 \6 n7 u+ q: ?/ Z( y$ ?
    3)终止部分:00110,与起始部分以及数字0的代码都一致。' K& z: c& c- T; O. k1 o
    8 ]5 C2 f$ Q9 ^) N3 T
    2.条形码的制作过程
    7 l6 ^. f) w2 z1 V7 L1 |9 ~* `" ], S9 V
    黑色和白色可以用二值图像来表示,于是我们的关键是如何得到与条形码对应的二维矩阵。
    , n* m/ W$ p/ M& N. ~0 e
    + _' C, k* h& D( c8 [/ u" n定义窄条即代码0的像素宽度为w,宽条即代码1的像素宽度为2w(一般取w=1即可);定义二维矩阵在黑色像素点处值是0,在白色像素点处值是1。此立即上得出与学号对应的条形码的二值图像的矩阵。
    ! s# a! @7 H( |8 w! {
    / t/ e, E. f: ^& s0 X0 ?% U条形码效果如图所示(程序代码见附件所示)。7 O% v% s$ g8 [; G: h
    1.png 2 m7 F% _0 K* u+ q
    图一 所得条形码效果图# n. J# i, H. k5 b: S5 {% \$ x
    & B9 ~& h( k* e" ?: U) R: g: y
    3.打印与测试6 ?1 P  W/ o4 |* Q% i

    % f: }9 N+ S7 C* a/ v4 t5 [" g) \/ v有的制造商在批量打印图书证时不太用心,加上可能设备老旧,所以难免会使某些同学的图书证出现杂纹等印刷质量问题。0 e0 n; u1 T" Z$ H+ l* e" V
    # E: U/ O  l1 d4 _, j' L
    因此,在DIY的过程中,尽量采用分辨率较高的打印机。对于分辨率较低的打印机,通过修改程序,扩大条形码的宽度,也可打印出质量上乘的条形码(本文测试时采用HP Color LaserJet 2820彩色激光一体机)。' q6 V- T6 K1 b1 x0 s5 B+ e; Z
    5 ^. X0 p% B* z( D/ X
    为了方便进行测试,本文打印出不同大小的条形码。
    ' }2 c* M- A7 o' y1 j% @& `& I) i7 e4 j
    测试一:将其用透明胶带粘在硬纸板上。# q& |) J$ x0 T7 Q/ |- q  c

    # D4 f9 l* W* F( t, R7 I9 H结果令人遗憾,读卡机根本不识别。通过与图书证比较发现:# w: p+ {$ t/ f$ G
    3 b# x, w* p) N! i; n
    图书证正面的塑胶反射能力很弱,在灯光下几乎看不到灯在其上的虚像;而透明胶带的反射能力很强,可以地清楚灯地虚像。
    0 `; E9 p; \" ?
    . m: V  N" }1 }. R. u测试二:找到原因后进行,将与原图书证同样的大小的条形码用胶水贴在硬纸片上,结果顺利该校图书馆通过门禁。We are in now!!
    ( t, J5 s& B! T, ^6 t6 C. P' R3 N$ w6 \( V" k0 H
    效果如图二所示。/ g3 i# i4 l( Q2 K: _( p- R
    2.png
    9 w/ N5 A, r6 F; q4 R图二 打印效果图
    % J! N; k- }+ {1 D8 D, Y& z0 A  {测试三:用打印出的不同大小的条形码逐一进行测试,只有在一定的大小范围才可以通过测试。这说明了,条形码扫描器(注:本文使用的是全角度扫描器,其通过光学系统产生多条扫描线)是有一定的大小识别范围的。
    % J0 v3 p, X# t: G% z
    2 F$ f: }' T5 N, H# _% P4.扩展应用
    & F, a7 t! ^8 J5 d. w- d% f% q  t2 O& }+ y% x: H% F$ I
    为了达到逼真的效果,我们做出了图书证模板(MATLAB版),该模板根据用户提供的证号、系部和姓名、照片、字体等信息,自动生成可供彩色打印的图书证如图三。# W7 t! u2 y: Z% X1 ~3 V
    3.png ! d% p( B5 I# T! T! p5 V
    图三 可供彩色打印的图书证& |0 U  g: V. q/ E
    0 `- P9 K% R, u3 ^) a4 e
    过后,我们会给出相应的网页版、C++版、VB版等等。, M& K9 x% g$ x

    ; s0 B- z7 A2 G5.关于本例的一些思考
    3 ?- S3 c2 [! M% d
    6 x% N6 ]# V) O4 M, ?3 b( u由相关文献,可知条码技术具有以下优点:. N0 @# z" G  W, Y9 l
    # J  E% n  E1 r$ _9 K. o- F
      1)、输入速度快; ) F; U; W( U* N% r$ o; A
    ' ]( ^% _$ X- t: |' K& A
      2)、可靠性高;
    & @* V$ e* F$ N3 d0 T0 D4 y7 G' r: I) l
      3)、采集信息量大;
    " Q$ U, z' U1 j: l4 G2 T  A! E7 J
    + b+ }; n9 |  z2 c2 q# K! {  4)、灵活实用;0 a. D: G' r; F
    1 ?) j/ c7 l4 A% I- I
    5)、条码标签易于制作# e& O+ ^3 V: ?2 J) K# q
    ! z* u/ ^6 S4 a8 k
    6)、识别设备操作容易,不需要特殊培训;5 T, r* m2 I  \
    : \$ W( d: H. Q
    7)、设备也相对便宜。% k6 h/ m( M' l4 S0 E& g

      H' ]% ^; M$ ?' E: N因此,在平时可以自己构造的加密的编码规则,利用现成的条形码扫描器,可以很快实现特定功能的组建嵌入式的或基于PC的条形码识别系统。- Z4 Q4 w2 q$ h  H! R- R+ `

    - f! q( t# v  z由本文看,尽管一维条形码在各个领域获得了广泛的应用,但其安全性值得商榷。于是,在安全性要求较高或者要求条形码携带更多信息的领域,人们普遍采用二维码。常见的二维码如图四所示(更多资料参照文[2])。
    6 w5 |  }" M3 r2 A$ R6 P 4.png
    1 u! V9 R* P. X图四:常见的二维码9 X1 j2 W, W& L" M
    3 F; m5 ~( ?3 Z2 m' |
    6.免责声明与注意事项% o# \# ?7 f, r' v' ?
    ; l5 f3 d1 N1 L+ k  J  e8 g5 t7 v
    版权所有,翻版必究。
    + b8 r! o- U; G: l, b
    3 N/ i5 \3 t) O. y' t1 M2 j技术在于交流。本文旨在交流条形码制作技术,并为个人制作提供质量较为上乘的图书证的方法,非经相关方面授权,严禁用于商业用途。有不法分子由此牟利而产生的法律责任,与本人无关。
      v" t* T: {; h/ N1 f% O1 G7 k2 L# o% m
    任何单位或个人认为本文可能涉嫌侵犯其合法权益,应向本文作者提出书面权利通知,并提供身份证明、权属证明及详细侵权情况证明。作者在收到相关法律文件后,将会依法尽快删除本文中违反法律的内容。 5 g. E' Y! J' S4 f2 f
    % w  I& c, h0 }
    7.
    # X0 v% i1 F" s& N- L参考文献; P8 G) F; I+ }: a' f/ N$ ]3 J

    2 \( M4 w, ?/ D  ~7 `[1]条形码—百度百科http://baike.baidu.com/view/13740.htm[2010-09-25]
      j6 q/ g, [6 b( h, G
    / B1 X( O$ @0 c8 v[2]二维码—百度百科http://baike.baidu.com/view/132241.htm[2010-09-25]- O2 I% Q5 p% ~, \1 h: Z
    4 i/ }6 u) H$ b% j& e6 m' x7 y
    8.+ M) _( p, {* x0 r7 b
    附录2 }4 |! P9 Q& @! U" ]

    * i; z/ j) i# J/ I相应的MATLAB程序代码如下(该程序经过简单修改,可以写成函数的形式,更方便地进行各种编码规则的条形码的生成):
    . W' o; s* O3 v# `$ M. l$ U, P) ^  H5 J& h0 R; R
    %barcode.m
    4 ^4 k- b+ L! ~' y- `0 g3 d, B- [; @- G
    %生成学号a对应的条形码
    * B% e' f( n3 |6 w+ z
    1 p8 U% e( A0 |) S1 h%2011/09/25 13:24 BY小谷同学4 o: N$ M! L, M0 F
    * t$ r5 W$ Y# K9 V, u
    a='1234567890123';%学号,自行更改- w5 r3 z, t. z
    ( x9 U1 k) U7 m7 Q
    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;
    3 l. s" K7 c& L0 t- b% ~7 H; J7 F
    ) _0 ?  ]% B8 g  q# Y% T# l0,1,1,0,0;0,0,0,1,1;1,0,0,1,0;0,1,0,1,0;0,0,1,1,0];%数字编码3 J5 j) ?0 X4 d* c2 H
    - }" T. N# H, a' O, o4 O1 ~
    White_num=[0,1,0,0,1];%插入符的编码/ j: m. O. J4 f7 {9 B( V; T
    9 }# y' x6 }5 ]8 o' B* d
    %Black_SE='00110';! S7 `# _: P( n! ?8 ~0 g
    ; T! _+ d0 j; G: j- ]$ f0 E
    %White_SE='10001';White_M='01001';
    + t, y; C- t, y" s% t% V; Y. R) X5 {5 B5 F( z2 z
    barheight=30;%定义条形码的高度8 L$ G8 U% [  y/ p  j0 e

    , F2 i: `" d7 N# Pbarwidth=1;%定义条形码的像素宽度4 P3 i/ j  H% n5 C
    9 d5 b6 a9 _* \1 z
    $ w3 _! s' i7 G. M
    %可以对特定长度的输入进行控制,本文规定长度为13
    + k7 ]# m5 u1 k( Z
    " O: {( D- x; w+ S+ O4 ~if length(a)~=13
    ' o8 |! Z# [+ S# p4 K: Y# M. M, J; f8 T5 y3 R* n/ a, g& Z

    0 w7 l1 Z( u1 N+ J! |error('图书证必须有13个数字');
    2 K4 V5 K( s2 m' ^5 I! c0 c7 m
    end
    9 R9 C; p! B' e+ R% \# G. @
    2 G4 l/ Z2 A7 L/ M/ _) P
    4 \6 S( m5 k, v; m7 N9 Abarcode_SE=[0,1,1,0,1,0,0,1,0,0,1,0,1,1];' c' F, f8 o6 u

    8 a/ D7 J* a' q, f%为方便,直接人工得出起始与终止部分的条形码
    ) [' d' w0 g' p
    5 R( n' q5 `$ g8 R' U$ Z2 |1 d' S$ E%也可以由程序生成.# @& U% x* |2 K, m' \9 U
      y; H9 X. x' L' v$ f1 Q- N  Y
    total=length(a)*(7+7);/ X: n  R' X1 n  z

    " O; t: K* a6 s9 z%条形码的总像素宽
    $ }2 @; t% i- i3 W8 f! l4 C' X# d! `3 Z1 A. x- l) C
    %也可以不用求,因MATLAB提供的均是动态数组" g3 ^- a+ k5 y
    . O# s( g" s- h& H+ j
    s=1;%计数,记录9 z0 L' @4 z6 W( G* V7 v
    * z0 O0 S. L- l" l# m' Z4 K

    ' d' L: f' Y3 v2 `6 P6 ~1 z  C' ?%由于利用for语句容易出现不可预料的错误% Q* A. @& i: w) t1 T
    ) y, r: D6 L: T0 T6 ?+ w
    %大部分是数组的行标与列标的调用问题,于是采用while循环5 J$ q9 c+ C, ~5 y4 O1 e

    + C# K5 f6 R0 c9 B7 K' {%嵌套循环,得出数据部分
    * {7 ?; i6 ^1 E# R9 M5 J5 X6 c6 d8 `/ n( e8 j
    m=1;" |8 T1 V( s* T) J( o0 k

    5 i# w0 b; v: ]while m<14 % S7 W4 l$ U1 {; P$ ]) i

      K2 W+ t7 x& d! q, u# q# b4 @* n' \. `4 G9 _5 G* n
    if a(m)=='0';) C3 J6 p; y! @& c  X9 O) v: |

    * ^, U$ @2 H) W! h4 K: g% v1 Z5 B4 Q% `1 y7 K2 t$ z8 C7 {
    t=10;
    ' X6 W% d0 t. ^0 B! B
    4 A1 ?( T  |/ J1 M* e
    8 _; N  m8 b# K9 P9 L+ t! A%若为数字零,应该调用的下标是10$ Y& U3 j* Y3 Z. L

    & I+ {) V  k+ z
    7 S, Z' `. n6 ]# n- belse
    2 [& b7 H) Z8 _$ p' |. B( R; l5 D4 K0 o& P; |& ~
    $ _) f6 s. F- _( t
    t=double(a(m)-48);
    ' ^" j, J" e" \$ {5 }
    6 D9 l- f8 J4 a$ _7 n%由于输入是ascii字符,转换为整数需要减去30H,即48
    % o# U% q0 _! S# ^. y1 w2 W# a$ w& b6 h& L+ P8 N9 }

    : F( w5 W! |: h) O& g' \5 l# yend
    # n  W1 P) I- Z, i, O0 v5 }2 M& Y0 n- ]! I0 E

    3 u# p' R0 a7 A+ v& {, Y" Sn=1;%同样的while循环
    ! v. D# w  `/ t& _$ d$ ^9 `# E+ s! b; X" o; G& \/ M- Z! \
    - l. v9 ~7 V( T: t
    while n<6! V9 w/ r  D" Z5 _8 l# Y
    6 N- ~" _9 r% |# l5 _; m5 C) ]. H+ x/ |

    . ^  v; W: N+ |. vif Black_num(t,n)==02 v4 }+ c) u: c. Y: ?
    6 {: I+ q5 q5 G1 b6 n" S+ l5 p
    $ B9 X& {; q% }' g% \
    barcode_M(s)=0;5 |- B% i9 v5 s" {2 a- D

    # y3 N8 A( y' L& @1 K1 t* h+ z+ D1 O- o3 X# _4 F" \( b
    s=s+1;
    8 Q$ }7 A( T& ]6 O. L& w! R) F$ R: G7 e: G4 \

    6 n9 a% z0 \- U& eelse3 n" j. }* {, `6 r% K5 m7 w

    2 M; ^$ s* e; {& E: k9 n4 t- o$ Z) U5 T; y0 ?1 n6 n
    barcode_M([s,s+1])=[0,0];5 S1 F6 s) j2 D0 g) U: L" Y3 g7 n
    7 Q0 L) x9 @+ p6 h5 C
    + G' K) @, f& P8 X
    s=s+2;
    # x8 @9 U6 `- q' Z9 @2 a
    # a5 U8 t5 \. l7 Y' ^, X9 d5 u( _( }4 @0 G9 r$ D
    end
    . X; y  s- ~/ e
    9 ?& \3 q( O3 @8 ~  h1 s% x  b; Q- z  I( e2 n) c9 d
    if White_num(n)==0
    3 Q) T& \; \* w) l* {2 `
    ) N% K- y3 D3 W9 l% ~# G
    0 d' b$ Z1 Q7 i+ [  Ubarcode_M(s)=1;. b4 ?+ q$ u+ \) x3 E1 f; X
    7 w1 p7 M3 H  B) {( K/ O3 P8 D

    # F1 G4 r- }* Ss=s+1;
    4 x4 P$ q2 Z/ t0 C( E) `" |1 o3 p( q) p9 O- ^

    & R7 q. R9 @7 f) W3 }: Delse5 ^& _! g/ |. v. ]2 b
    / n5 R) q# l% H  m
    1 X1 \% N5 y5 w2 A: C
    barcode_M([s,s+1])=[1,1];
    ' c% v; d) ?) z( ?7 t& [# w: Z) L0 d& {0 t8 E$ ]; W- B5 k9 p

    , r3 v% L' p( a7 e) [/ Ss=s+2;% O& F* A# F% d" F
    ! `; A( ^0 Q- f+ e0 \9 y/ x

    5 P1 N% F0 q9 V% Xend
    , |4 d: T5 ?+ v2 x; Q9 \9 X" g: ?- B# r  U: J7 n) W. {4 i

    1 `- g9 M' c/ j6 C  u  R0 |  Zn=n+1;/ k; n# H; ?4 h% d

    . W# v1 {$ Z, L& |
    1 v+ |/ z+ y$ A( ?7 v' Lend
    : T: R2 f1 u! T  d) u' c% l7 D
    1 T+ ~! a8 J0 ]; w. d  km=m+1;
    ! h6 c9 W0 Q( g# `
    ( h5 r2 c+ Q5 j4 C: v$ Y# rend- E( X3 \9 @6 j" {% u' m
    : h; }: g* W  ]. @" ?& W/ Q* p

    # e# R" W# ~' O* \0 D5 jbcode=ones(barheight,1)*[barcode_SE,barcode_M,barcode_SE];0 `6 I: N2 F' Q) m

    : Z3 h% @; _6 a: J5 d3 E  ~1 b, o%将一位矩阵拉宽,生成给定高度的条形码对应的二值图像的矩阵8 [+ `9 S/ j1 b7 D1 `) _
    " z- ]8 o) W+ }9 Y8 Z; A2 D7 L9 K5 j( H
    bcode=bcode==1;%将数组转换为逻辑数组(Logic Array)
    5 {/ ?: z3 P( b9 s
    & H! ~) D' H( Nimshow(bcode)%显示所得到得条形码, \( T/ b; i; ^1 j! i
    7 Z* |/ ?4 Q8 e
    %然后可以自行存贮得到的条形码
    2 J- W4 y2 E2 o: k! S: T0 Q+ D- \  ~; D- p* y
    %然后用PS等工具得出具有自己特色图书证啦% Y( r5 D  j; D2 ]

    - c1 N; N3 y0 e: P  e) ^: m+ H4 p4 E
    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! 代码
    很强大啊,4 Y2 e; h+ y: q1 H
    可惜首先我联想到的是可以用来制作假的书本条形码,用于还不见了的书,,我这是在犯罪吧?
    回复

    使用道具 举报

    4

    主题

    2

    听众

    664

    积分

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

    [LV.5]常住居民I

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

    群组数学建模培训课堂1

    群组Matlab讨论组

    群组数学建摸协会

    freedomfox 发表于 2011-9-29 20:36 ! O& n5 k: D0 o/ {
    很强大啊,5 }8 l! }% \5 w: k5 M
    可惜首先我联想到的是可以用来制作假的书本条形码,用于还不见了的书,,我这是在犯罪吧?{:3_ ...

    " y) [) D) [9 L! U# n; z) S可以,不过你的学校肯定有记录,一旦发现,后果很严重的;# V8 Z5 q% d0 @; O7 R! h+ S
    目前我想到是:
    ! Q/ J' ?0 N7 d1 ~- N' j一、去周围学校的图书馆。; F3 z7 C# b) @+ N; V
    二、自己丢的图书证自己做一个一模一样的来。
    ) n7 k+ d# j9 u7 I4 H, L三、将图片弄到手机上,然后用手机刷进图书馆,吸引眼球
    ) z( d  n5 D- S0 e+ M  W5 [四、将来毕业再回学校,再做一个图书证进图书馆2 }( p, T' G  {; I. |
    回复

    使用道具 举报

    书呆子 实名认证       

    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-5-24 20:59 , Processed in 0.507064 second(s), 86 queries .

    回顶部