{CODE39描画} {---プログラム掲示板投稿フォーム--- 【ソフト名】CODE39描画 (バージョン 0.10) 【作 成 者】SWinX (連絡先:swinx@plala.to) 【種 別】フリーソフトウェア 【ひまわりのバージョン】ver.1.37 【転 載】可(転載条件:ご自由にどうぞ) 【改変運用】可 【ひまわり本体への梱包】可 【実行時に利用作成するファイル】無 【コメント】WEBで検索して規格を見つけたので、作ってみました。 でも、バーコードリーダーなんて持ってません。 …どなたか、印刷して読み込みの確認をしていただけないでしょうか(笑) 参考文献:バーコードホームページ/日栄インテック(株) http://www.barcode.ne.jp/barcode/code-39.html ---投稿フォームここまで---} 母艦の、タイトルは、「CODE39描画」。 肌色で、画面クリア。 CODE39=「0=NnNwWnWnN,0 1=WnNwNnNnW,1 2=NnWwNnNnW,2 3=WnWwNnNnN,3 4=NnNwWnNnW,4 5=WnNwWnNnN,5 6=NnWwWnNnN,6 7=NnNwNnWnW,7 8=WnNwNnWnN,8 9=NnWwNnWnN,9 A=WnNnNwNnW,10 B=NnWnNwNnW,11 C=WnWnNwNnN,12 D=NnNnWwNnW,13 E=WnNnWwNnN,14 F=NnWnWwNnN,15 G=NnNnNwWnW,16 H=WnNnNwWnN,17 I=NnWnNwWnN,18 J=NnNnWwWnN,19 K=WnNnNnNwW,20 L=NnWnNnNwW,21 M=WnWnNnNwN,22 N=NnNnWnNwW,23 O=WnNnWnNwN,24 P=NnWnWnNwN,25 Q=NnNnNnWwW,26 R=WnNnNnWwN,27 S=NnWnNnWwN,28 T=NnNnWnWwN,29 U=WwNnNnNnW,30 V=NwWnNnNnW,31 W=WwWnNnNnN,32 X=NwNnWnNnW,33 Y=WwNnWnNnN,34 Z=NwWnWnNnN,35 -=NwNnNnWnW,36 .=WwNnNnWnN,37 =NwWnNnWnN,38 $=NwNwNwNnN,39 /=NwNwNnNwN,40 +=NwNnNwNwN,41 %=NnNwNwNwN,42 *=NwNnWnWnN,」 X=2 //エレメント幅=細線の幅(>0.191mm) N=2.5 //太・細エレメント比(1:2.2〜3.0) W=INT(X*N) //太線の幅 I=X //キャラクタ間ギャップ(1X〜3X) Q=6*X+3*W //クワイエットゾーン H=63 //シンボル高さ(6.35mmまたはシンボルの15%)
(0,100)に、移動。 変換元文字列ラベルを、ラベルとして、作成。 (その、右側)に、変換元文字列エディタを、エディタとして、作成。 その、幅は、200。 (その、右側)に、バーコード描画ボタンを、ボタンとして、作成。 その、イベントは、バーコード描画。 (その、右側)に、クリアボタンを、ボタンとして、作成。 その、有効は、オフ。 その、イベントは、バーコード破壊。 画像保存ボタンを、ボタンとして、作成。 その、有効は、オフ。 その、イベントは、画像保存。 (その、右側)に、表示ラベルを、ラベルとして、作成。 その、テキストは、「」。 その、幅は、200。 変換元文字列エディタに、注目。 待機。
*バーコード描画 それ=変換元文字列エディタ。 チェックサム追加。 C=文字数。 (0,0)に、CODE39イメージを、イメージとして、作成。 その、高さは、H。 その、幅は、(C*(6*X+3*W)+(C-1)*I+2*Q)。 表示ラベル=それ。 バー文字に変換。 '表示。 バー描画。 バーコード描画ボタンの、有効は、オフ。 画像保存ボタンの、有効は、オン。 クリアボタンの、有効は、オン。 戻る。
*バーコード破壊 CODE39イメージの、オブジェクト破壊。 バーコード描画ボタンの、有効は、オン。 画像保存ボタンの、有効は、オフ。 クリアボタンの、有効は、オフ。 戻る。
*画像保存 ダイアログキャンセルの値=「キャンセル」 「PNGイメージ|*.PNG|BMPイメージ|*.BMP」の、書込ファイル選択。 もし、それ=ダイアログキャンセルの値ならば、戻る。 それへ、CODE39イメージを、イメージ保存。 戻る。
*チェックサム追加 コード合計=0。 対象文字列=それ。 変換後文字列=「*」 文字数。 それ回( 対象文字列の中で、回数から、1つ、MID。 大文字変換。 コード=CODE39の、それ。 もし、コード=「」ならば、「{それ}は、CODE39では表せません」と、言う。 違えば、( コード合計=コード合計+コード#1#0 変換後文字列=変換後文字列&それ )。 )。 コード合計と、43の、余り。 それ=CODE39#それ。 それ=変換後文字列&LEFT(それ、1)&「*」。 戻る。
*バー文字に変換 コード文字=「q」。 対象文字列=それ。 文字数。 それ回( 対象文字列の中で、回数から、1つ、MID。 コード=CODE39の、それ。 もし、コード<>「」ならば、コード文字=コード文字&コード#0#0&「i」。 )。 コード文字から、1文字、右端を切り取る。 それ=コード文字&「q」 戻る。
*バー描画 PX=0 ペン太さ=1。 対象文字列=それ。 文字数。 それ回( 対象文字列の中で、回数から、1つ、MID。 条件分岐。 「q」の時、( ペン色=白色。塗り色=白色。 CODE39イメージの、(PX,0)から、(PX+Q,H)へ、四角形描画。 PX=PX+Q。 )。 「i」の時、( ペン色=白色。塗り色=白色。 CODE39イメージの、(PX,0)から、(PX+I,H)へ、四角形描画。 PX=PX+I。 )。 「W」の時、( ペン色=黒色。塗り色=黒色。 CODE39イメージの、(PX,0)から、(PX+W,H)へ、四角形描画。 PX=PX+W。 )。 「w」の時、( ペン色=白色。塗り色=白色。 CODE39イメージの、(PX,0)から、(PX+W,H)へ、四角形描画。 PX=PX+W。 )。 「N」の時、( ペン色=黒色。塗り色=黒色。 CODE39イメージの、(PX,0)から、(PX+X,H)へ、四角形描画。 PX=PX+X。 )。 「n」の時、( ペン色=白色。塗り色=白色。 CODE39イメージの、(PX,0)から、(PX+X,H)へ、四角形描画。 PX=PX+X。 )。 )。 戻る。
|