Category Archives: Life

EAN13バーコード生成CGI

EAN/ISBNのバーコードを生成します。画像はGIF形式です。

ブラウザから何も考えないで印刷したところ、手元のバーコードリーダではちゃんと読めました。


例1)http://www.fabrice.co.jp/cgi-bin/ean13.cgi?code=9784582833409

は、こういうバーコードを生成します。

例2)高さを指定した場合。h=120。 http://www.fabrice.co.jp/cgi-bin/ean13.cgi?code=9784582833409&h=120

は、こういうバーコードを生成します。

※高さは、>10、<200まで

バーコード生成器その2

EAN13バーコード生成CGIを呼び出すためのCGI。例えば連番のバーコードをまとめて印刷したいときに。

入力欄に1行につき1つのコードを入れると、いくつでも(最大4K)バーコードを生成します。CODE128に加えてEAN13を追加しました。barcodetypeパラメータに、code128かean13を入れられます。デフォルトはcode128。

ean13の場合、コードが12桁の場合は自動的にチェックデジットを計算して付加します。

uuidを取得するCGI

大量のユニークIDが必要が必要になったときに。RFC 4122で定義されたUUIDを返すCGI。単にPython2.5のuuidモジュールを使っているだけでね。uuid.uuid4()の戻り値です。これでダブらないフシギ。

受け取るパラメータは、count=件数のみ。countは最大1000まで。

戻りは改行で区切られたテキスト。

例)

ローカル環境で動かせばなんてことないけれど、何かあったときのバックアップ用にでも。

#!/usr/bin/env python2.5
import cgi,uuid
__MAX_COUNT=1000
print "Content-type: text/plain\n"
try:
    form = cgi.FieldStorage()
    try:
        count = int(form.getfirst("count",1))
        if count>__MAX_COUNT: count=__MAX_COUNT
    except:
        count = 1
    for i in range(count): print uuid.uuid4()
except Exception,msg:
    print "error occured"