VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/12/27(Tue) 17:11
投稿者たすく
URL
タイトルVB6での回転文字列の印刷

お世話になっております。タスクと申します。

現在VB6 SP6にてアプリケーションを開発しております。
その機能の中に、グラフの表示/印刷があり、Lineメソッドなどを利用して
自前描画を行っております。
グラフの中にY軸のタイトルは反時計回り90度回転させて描画する部分があり、
コレについてはWEBで調べてCreateFont等を利用することで実現できると分かり
Pictureについては期待通りの描画が行われます。
ですが、印刷すると回転せずに描画されてしまいます。
なお、ハードコピーによる印字は許容されておりません。

処理としては以下の様に行っております。

※ rfDevにPictureかPrinterがわたってきます。
 尚、切り出して整形しただけなので、サイズ計算などの処理は省いております。

Public Sub drawYTitle(ByRef rfDev As Object)

    Dim hLastObjct As Long
    Dim hFont As Long

    hFont = CreateFont(18, 0, 900, 900, 0, False, False, False, SHIFTJIS_CHARSET, _
                OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, _
                DEFAULT_PITCH Or FF_DONTCARE, "MS ゴシック")
    hLastObjct = SelectObject(rfDev.hdc, hFont)

    Call TextOut(rfDev.hdc, 0, 0, vbTwips, vbPixels), _
                g_stGraphEnv.strYTitle, LenB(StrConv(g_stGraphEnv.strYTitle,
vbFromUnicode)))


    Call SelectObject(rfDev.hdc, hLastObjct)
    Call DeleteObject(hFont)

End Sub


尚、色々なプリンタにて試してみましたが、どれも旨くいきませんでした。
何方か原因が分かる方、アドバイスを宜しく御願いいたします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -