• 締切済み

OSの違いによるバーコード(CODE39)印刷

妙な現象が発生しており、頭を悩ませております。 VB6.0で作成したプログラムで、A4普通紙にバーコード (CODE39)を含むテキストデータを印刷させています。 開発環境としてはWin98を使用しており、そこで作った exeファイルを使い、Win98・Win2000では問題なく動作 することは確認できております。 ただ、そのプログラムをWinXPで実行すると、バーコードが 正しく認識できない形で出力されます。 98/2000で出力した結果とXPで出力した結果とを照らし あわせてみたところバーコードの形が異なっていました。 (バーコードリーダでは読み取り不能) フォントファイル自体、98/2000と同一のものをインストール しており、試しにEXCELでこのフォントを使ってシートを 作り印刷してみると正常な形で出力することができました。 Win98で生成したexeをXPで動かすこと自体は問題ないと 思うのですが、このCODE39フォントとXPの組み合わせが 問題あるのでしょうか? ライセンスの関係上、XP側にVBを入れるわけにもいかず なんとか現在の環境下でWin98にもWinXPにも対応可能な コードを生成できないものかと悩んでおります。 MS明朝などの文字化けについては別の形の書込みが ありましたが、バーコードフォント側の不具合については 書込みが見当たらなかったので、今回書き込みを させていただいた次第です。

みんなの回答

回答No.1

お役に立てるか判りませんが、 XPとXP以外では、文字フォントのサイズ計算が異なるとの事です。 この当たりに依存した出力ですと、おかしくなる可能性がありますね。 http://support.microsoft.com/default.aspx?scid=kb;ja;417434 私はブラウザで、「等幅文字がずれる」という現象で質問させて頂きました。(ご参考までに) http://okweb.jp/kotaeru.php3?q=1061101

bunta5963
質問者

お礼

返答をいただきましてありがとうございます。 昨日の昼にコメントを書いたのですが、 なぜかそれが出てきません…。 文字のサイズだけならば位置がずれる程度のことなので 問題視することもないのですが、バーコードの表示が 正しくないためにバーコードリーダで正常に認識できず、 困っています。 ちなみに、この現象はフリーフォントでcode39.ttfと いうものを使うことで発生しています。 なにしろフリーフォントであり、サポートはしてない みたいです。 http://www.technical.jp/handbook/chapter-font1.html あと、別のCODE39フォントを使うようにプログラムを 改造してみたところ、この場合はWin98,2000,XPとも 認識可能でした。 (C39T25W10.TTF…ただ、これは幅が広くなるので  それがネック) となると、考えられることはWin98&code39.ttf&VB の相性なのかと思うのですが… ただ文字フォントについて、今後ひっかかる可能性も あり、参考になりました。 ありがとうございました。

関連するQ&A