[リストへもどる]
一括表示

投稿時間:2003/06/30(Mon) 19:27
投稿者名:大きなのっぽさん
Eメール:
URL :
タイトル:
Windows2000で印刷すると・・
初めての投稿です。

今、VBを使って印刷をする初歩的なプログラムを作っています。
内容は、花ちゃんさんのソースをもろ参考に(ぱちくって・・・)頑張っています。
文章苦手で、気の利いたことも言えないので、質問をさっくり書きます。

質問:windows2000でVBするとおかしくなります。

windows2000にVB6.0(sp5)をインストールして開発しています。
内容は、先程も書きました印刷プログラムです。
ソースは、
******************************************
           With Picture1                                                  
                .AutoSize = True
                .ScaleMode = vbTwips
                .Picture = LoadPicture("ここに画像のアドレスを")
                .Visible = False
                .AutoRedraw = True
                .ScaleMode = vbCharacters
                .CurrentX = 4
                .CurrentY = 1
                '.ForeColor = QBColor(4)
                .FontName = "MS 明朝"
                .fontsize = 11
                .FontBold = True  
                Picture1.Print "花ちゃん大好き"
                .ScaleMode = vbTwips
            End With
            Printer.PaintPicture Picture1.Image, 0, 0, Printer.Width, Printer.Height
**********************************************
といった内容です。

この内容で、BMPファイルを読み込み、プリンターに印刷します。
※画像はモノクロ画像、A3くらいのサイズです。

印刷に使うプリンターはキャノンのLBP−1610です。
実際に実行してみると印刷はできます。
ですが、印刷する時にスプールに溜まるサイズが非常に大きいです。
実際のファイルは500kほどで、プログラムを通ると3.8Mに!
ですので、プリンタもたじたじで、印刷速度は一分間に4枚ペースです・・・
ところが、カラープリンターで出力すると70kに!
さくさく出てきます。(プリンタはLBP−2810)

プリンタの設定かと思っていろいろ触ったのですが、どうも違うようです。
しょうがないので、違うOSで試したところ、windows98では問題なく
さくさく出ました。
これは、windows2000で出すから発生してるのだ!っと思ったのですが、
VBマスターのみなさま、どうなのでしょう・・

もし対応作がありましたら教えていただきたいです。
ながながと質問してしまい、申し訳ありません。

投稿時間:2003/07/01(Tue) 09:50
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: Windows2000で印刷すると・・
回答ではありません。
もう少し問題を整理して頂いたらどうでしょうか?
プリンターに問題があるのか? OSの方に問題があるのか?又はソフトに問題があるのか
絞り込んでみてはどうでしょう。
同じソフトでWin98でLBP−1610に出力した場合は問題ないのでしょうか
Win2000+LBP−1610の場合だけが遅いのなら一度最新のドライバーをDLして入れて
試してみてはどうでしょうか?
同じ設定でLBP−2810に出力した場合は問題ないのでしたら、一番に考えられるのは
ドライバーの問題かと思うのですが。

投稿時間:2003/07/01(Tue) 12:23
投稿者名:大きなのっぽさん
Eメール:
URL :
タイトル:
Re^2: Windows2000で印刷すると・・
すみません、自分でもどこがおかしいのか分からなくて、
回答しずらい内容になってしまいました。

詳細を書きます。

プリンタのドライバーは最新のものを使用しています。
まったく同様のプログラムをwindows98で動かしたところ問題なく
出力されます。(LBP−1610、LBP−2810ともに)
問題なくというのは、両方ともプリンタに対して
70K程度のデータしか出ないということです。

windows2000のドライバーの設定が悪いのかと思いまして、
LBP−1610、LBP−2810の設定をできる範囲で
同じにしましたが効果なしでした。

windows2000でBMPを出すとサイズが大きいのかと思い、
プログラムのテストに使用したBMPファイルをペイントで開き
印刷したところ(LBP−1610)、画像が大きいのか12ページに
なって出力されましたが(A3程度の画像をA4で出したのですが)
スプールにたまったデータの合計サイズは300k程度で、
どう頑張っても3.8Mなんてサイズにはなりませんでした。

そこで、私はwindows2000とVBの間での処理になにか問題があるのだろう、という
結論に達してしまったわけです。

その後、MSのサイトも検索してみたのですが、NT系ではPrinterオブジェクトを
使って設定の更新がかけれない等の事象があると書いてありました。
その辺が関係しているのかな?と、少し調べてきます。

ここで質問させて頂くには、まだ十分に調査ができていなかったのかもと
思います。
ドライバがおかしいのか一度問い合わせしてきます。

投稿時間:2003/07/01(Tue) 13:40
投稿者名:NAO★
Eメール:
URL :
タイトル:
Re^2: Windows2000で印刷すると・・
他のソフト、例えば「ペイント」にて印刷して同じ症状なら
OSまたはドライバーが原因だと思われます。

また以下のことも試してみてください。(キヤノンのドライバー付属のヘルプより)

カラーイメージデータの印刷に時間がかかる (LBP-2030 以外の各機種)

[印刷品質]-[印字詳細]ダイアログボックスで[ホスト展開] にチェックマークが付いていると、カラーイメージデータをプリンタドライバで処理するためコンピュータが解放されるまでの時間が長くなります。コンピュータの解放時間を短くしたい場合は、この項目のチェックマークを消してください。

印刷データが複雑で印刷に時間がかかる

イメージモードによる印刷を試してください。イメージモードでは、印刷データの処理のほとんどをコンピュータが行うため、印刷速度はコンピュータの処理能力に依存するようになります。
もう一つの原因として、アプリケーションソフトによってはページプリンタが処理できない EMF 形式のデータを使用していることがあります。この場合は、[印刷品質]-[印字詳細]-[処理オプション] ダイアログボックスの [メタファイルスプーリングを行う] のチェックマークを消してください。