印刷

Similar documents
VB.NET解説

グラフィックス

ルーレットプログラム

ICONファイルフォーマット

グラフィックトレーニング 概要.NET のグラフィック描画は どんなことができるのでしょうか? グラフィックオブジェクトやグラフィック環境 概念を理解するためには クラスを使って馴れることが近道です 本 書に記載されているコードをカットアンドペーストして 一つ一つの機能を体験してください 前提 グラ

データアダプタ概要

クリッピング領域

ブロック パニック

パラパラ漫画

ListViewコントロール

パラパラ漫画

3D回転体プログラム

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

Userコントロール

万年暦プログラム

インベーダープログラム

NotifyIconコントロール

プロセス間通信

ファイル操作

神経衰弱ゲーム

正規表現応用

ブロック崩し風テニス

PowerPoint プレゼンテーション

グラフィックス 目次

BASICとVisual Basic

草競馬プログラム

3D回転体プログラム

VB実用Ⅲ⑩ フリーデータベースⅡ

通信対戦プログラム

画像閲覧プログラム

DAOの利用

VB実用⑦ エクセル操作Ⅰ

VB実用⑫ 印刷Ⅱ(Printerオブジェクト)

VB実用⑬ 印刷Ⅲ(PrintFormメソッド)

データベースⅠ

印刷

構造体

グラフィックス 目次

神経衰弱ゲーム

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

データベースプログラミング

ハッシュテーブル

ファイル操作-バイナリファイル

画像閲覧プログラム

VB 資料 電脳梁山泊烏賊塾 音声認識 System.Speech の利用 System.Speech に依るディクテーション ( 音声を文字列化 ).NetFramework3.0 以上 (Visual Studio 2010 以降 ) では 標準で System.Speech が用意されて居るの

Visual Studio2008 C# で JAN13 バーコードイメージを作成 xbase 言語をご利用の現場でバーコードの出力が必要なことが多々あります xbase 言語製品によっては 標準でバーコード描画機能が付加されているものもあるようで す C# では バーコードフォントを利用したりバー

占領双六ゲーム

ファイル監視

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 ゲームプログラミング スプライト スプライト Pygame では pygame.sprite を用いる事でスプライトの管理 描画 衝突判定等を簡単に行う事が出来る 此れを利用してキャラクター操作に関する各種機能をスプライトクラスとして 1 個

ウィンドウ操作 応用

API 連携方式 外部 DLL の呼び出し宣言 外部 DLL の呼び出し宣言のサンプルコード (Microsoft Visual C#.NET の場合 ) プログラムコードの先頭で using System.Runtime.InteropServices; が必要 クラスの内部に以下のような外部 D

GS1-128 の描画 DLL について (ver. 2.3) 動作環境など動作環境 WindowsXP Windows Vista Windows7 Windows8/8.1 Windows10 上記 OS について すべて日本語版を対象としております 32bit アプリケーションから呼び出される

万年暦プログラム

3D回転体プログラム

スロットプログラム

Javaプログラムの実行手順

回文作成支援プログラム

スライド 1

かべうちテニス

キー操作

回文作成支援プログラム

回文作成支援プログラム

占領双六ゲーム

C#の基本

エクセル詳細 アドイン

印刷

回文作成支援プログラム

64bit環境で32bitコンポーネントの利用

相性占いプログラム

VB.NET解説

チャットプログラム

ドライブは安全運転で in 滋賀♪

正規表現概要

mySQLの利用

Transcription:

グラフィックス との相違点 では Form コントロール 又は PictureBox コントロールに描画する場合は グラフィックスの各種メソッドとプロパティを使用する のグラフィックスは Windows のグラフィックデバイスインターフェイス (GDI) の API に基づいて居る のグラフィックスは GDI+ API にカプセル化された System.Drawing 名前空間に依って提供される GDI+ は のグラフィックス機能に基づいて拡張されて居るが メソッドに互換性は無い 概念の違い では グラフィックスメソッドは Form オブジェクトと PictureBox コントロール丈に適用される では グラフィックスメソッドは フォームに加えて PictureBox Panel GroupBox 等 Paint イベントをサポートする任意のコントロールに適用される 亦 グラフィックスメソッドは ListView TreeView Button コントロール等 OwnerDraw プロパティをサポートする任意のコントロールにも適用される AutoRedraw プロパティ のグラフィックスメソッドは 任意のイベントプロシージャから呼び出す事が出来る グラフィックスメソッドが Paint 以外のイベントから呼び出された場合は グラフィックスを永続化する為に AutoRedraw プロパティが使用される では グラフィックスメソッドは Paint イベントプロシージャ而巳から呼び出される 但し オーナー描画コントロールの場合 様々な Draw イベントプロシージャ (DrawItem DrawSubItem 等 ) からも呼び出される Paint イベントと Draw イベントで自動的にグラフィックスが永続化されるので AutoRedraw プロパティは不要に成り サポートされなく成った ClipControls プロパティ では フォームやコントロールの描画を制御する為に ClipControls プロパティを使用する 此のプロパティを True に設定すると 其れ迄見えて居なかった領域而巳が再描画され 理論上はパフォーマンスが向上する ClipControls プロパティに相当する物は には無い GDI+ に依るパフォーマンス向上と 最新のビデオアダプタの使用で 此のプロパティの必要は無く成った DrawMode プロパティ では パターンを別のパターンの上に描画する時に DrawMode プロパティに依ってグラフィックスオブジェクトの色が制御される 此のプロパティが効力を持つのは モノクロディスプレイか解像度の低い (256 色以下 ) ディスプレイ丈で有る -1-

DrawMode プロパティに相当する物は に無い 現在のディスプレイでは不要に成った DrawStyle プロパティ では Line メソッドを使用して描画する線の外観を制御する為に DrawStyle プロパティを使用する DrawWidth プロパティが 1 より大きい値に設定されて居る場合 DrawStyle プロパティは無効に成り 線は常に実線に成る では DrawLine メソッドの 1 つで使用される System.Drawing.Pen クラスの DashStyle プロパティを設定する事で 線の外観を制御する 線の幅は 此のプロパティに影響されない DrawWidth プロパティ では DrawWidth プロパティで線のピクセル幅が決定される 通常 DrawWidth プロパティは グラフィックスメソッドを実行する前に設定する では System.Drawing.Pen コントロールの Pen.Width プロパティで線の幅が決定される Pen の作成時に Width プロパティをパラメータと仕て設定するか Pen の作成後に Pen.Width を設定出来る Pen.Width プロパティを指定しない場合 既定は 1 ピクセルで有る Image プロパティ では フォームや PictureBox コントロールの Image プロパティは ビットマップのハンドルを返す 此のハンドルは Picture プロパティに割り当てたり Windows API の呼び出し時に値と仕て渡したり出来る では ビットマップにハンドルは無く成った ビットマップ其の物を Bitmap 型のオブジェクトと仕て渡す Bitmap コントロールは PictureBox コントロールの Image プロパティに割り当てる事が出来るが Windows API の呼び出し時に渡す事は出来ない Line メソッド では Line メソッドは 左上と下部の座標とオプションの引数 B を指定して 四角形を描画する為に使用する FillColor プロパティは純色で四角形を塗り潰すのに使用し FillStyle プロパティはクロスハッチパターンで四角形を塗り潰すのに使用する では DrawRectangles メソッドは四角形の境界線を描画するのに使用し FillRectangle メソッドは四角形を塗り潰すのに使用する FillRectangle は Brush オブジェクトをパラメータと仕て受け取る FillColor プロパティは SolidBrush に置き換えられ FillStyle プロパティは HatchBrush クラスのメンバに置き換えられた Point メソッド では フォームや PictureBox コントロールの Point メソッドは 指定の場所に有るピクセルのカラー値を取得するのに使用する Point メソッドは 画像の無いフォームやコントロールでも使用出来るが 殆どの場合は Picture プロパティに割り当てられたビットマップのカラーを取得する為に使用される では Point メソッドは無く成った ビットマップからカラー値を取得するには M:System.Drawing.Bitmap.GetPixel(System.Int32,System.Int32) メソッドを使用する フォームや -2-

コントロールに画像が無い場合は BackColor プロパティを使用出来る Print メソッド では Print メソッドは フォームや PictureBox コントロールにテキストを表示するのに使用する テキストの表示に使うフォントは フォームやコントロールの Font プロパティで決定され 色は ForeColor プロパティで決定される Print メソッドには テキストの配置を決めたり テキストを縦方向に表示したりする機能は無い では テキストの表示に DrawString メソッドを使用する フォントは Font オブジェクトに依って決定され 色は Brush オブジェクトに依って決定される 孰れのオブジェクトも パラメータと仕て DrawString メソッドに渡す DrawString メソッドには X と Y と謂うパラメータも有り 此等を使ってテキストの開始位置を指定出来る 亦 オプションの Format パラメータに StringFormat オブジェクトを渡して テキストを縦方向に表示する事も出来る PSet メソッド では PSet メソッドは フォーム上や PictureBox コントロール上のピクセルの色を変更するのに使用する DrawWidth プロパティが 1 より大きい値に設定されて居る場合は PSet メソッドは塗り潰された円を描画する 省略された ForeColor を使用する場合は 省略可能なパラメータを使って色を指定する には PSet メソッドに相当する物は無い フォーム上や PictureBox コントロール上の 1 ピクセルの色を変更するには DrawEllipse メソッドを使って高さと幅が 1 ピクセルの円を描画する DrawWidth が 1 より大きい場合に PSet と同等の機能を実現するには FillEllipse メソッドを使用する グラフィックスを扱うコードの変更 次のコード例では と でのコーディングテクニックの違いを示す の既定の測定単位は twip だが の測定単位はピクセルで有る 単純な線の描画 次のコードは 実行時にフォーム上に線を描画する方法を示す のコード例では Line メソッドを使用し パラメータと仕て線の開始位置と終了位置の X 座標と Y 座標を渡し オプションの引数と仕て色を渡す のコード例では DrawLine メソッドを使用し 引数と仕て Pens オブジェクトと 開始位置と終了位置の X 座標と Y 座標を渡す ' Draw a solid black line 200 twips from the top of the form. Line (0, 200) - (ScaleWidth, 200), vbblack Private Sub Form1_Paint(ByVal sender As Object, ByVal e _ As -3-

' Draw a solid black line 25 pixels from the top of the form. e.graphics.drawline(pens.black, 0, 25, Me.Width, 25) 点線の描画 次のコードは 実行時にフォーム上に点線を描画する方法を示す のコード例では DrawStyle プロパティを使用して線の外観を指定する のコード例では Pen オブジェクトを使用し DashStyle プロパティを設定して外観を指定する ' Draw a dotted line 200 twips from the top of the form. Me.DrawStyle = vbdot Line (0, 200) - (ScaleWidth, 200), vbblack Private Sub Form1_Paint1(ByVal sender As Object, ByVal e As _ ' Draw a dotted black line 25 pixels from the top of the form. Dim LPen As New System.Drawing.Pen(System.Drawing.Color.Black) LPen.DashStyle = Drawing2D.DashStyle.Dot e.graphics.drawline(lpen, 0, 25, Me.Width, 25) 線の太さの制御 次のコードは 実行時にフォーム上に太さの異なる複数の線を描画する方法を示す のコード例では DrawWidth プロパティを使用する のコード例では Pens オブジェクトの Width プロパティを使用する ' Draw a line with a thickness of 1 pixel. DrawWidth = 1 Line (0, 200)-(ScaleWidth, 200), vbblack ' Draw a line with a thickness of 5 pixels. DrawWidth = 5 Line (0, 400)-(ScaleWidth, 400), vbblack ' Draw a line with a thickness of 10 pixels. DrawWidth = 10 Line (0, 600)-(ScaleWidth, 600), vbblack Private Sub Form1_Paint2(ByVal sender As Object, ByVal e As _ -4-

' Draw a line with a thickness of 1 pixel. Dim TPen As New System.Drawing.Pen(System.Drawing.Color.Black, 1) e.graphics.drawline(tpen, 0, 25, Me.Width, 25) ' Draw a line with a thickness of 5 pixels. TPen.Width = 5 e.graphics.drawline(tpen, 0, 50, Me.Width, 50) ' Draw a line with a thickness of 10 pixels. TPen.Width = 10 e.graphics.drawline(tpen, 0, 75, Me.Width, 75) 円の描画 次のコードは 実行時にフォーム上に円を描画する方法を示す のコード例では Circle メソッドを使用し 引数と仕て円の中心点の X 座標と Y 座標と半径を渡し オプションで色を渡す のコード例では DrawEllipse メソッドを使用し 引数と仕て Pen オブジェクト 外接する四角形の左上隅の X 座標と Y 座標 幅と高さを渡す ' Draw a 1000 twip diameter red circle Circle (500, 500), 500, vbred Private Sub Form1_Paint3(ByVal sender As Object, ByVal e As _ ' Draw a 70 pixel diameter red circle. e.graphics.drawellipse(pens.red, 0, 0, 70, 70) 塗り潰された四角形の描画 次のコードでは 実行時に 2 つの四角形をフォーム上に描画する 1 つの四角形は純色で塗り潰し 今 1 つの四角形はクロスハッチパターンで塗り潰す のコード例では FillColor プロパティと FillStyle プロパティ 及び Line メソッドを使用する B パラメータを指定して Line メソッドを呼び出して 四角形を描画する のコード例では Graphics.Rectangle メソッドを使って輪郭を描画し Graphics.FillRectangle メソッドに引数と仕て Brush オブジェクトを渡す 此の例では SolidBrush コントロールと HatchBrush コントロールの両方を使用する ' Draw a solid red rectangle. FillColor = vbred -5-

FillStyle = vbsolid Line (10, 10)- (1000, 500), vbred, B ' Draw a rectangle filled with a crosshatch pattern. FillColor = vbblack FillStyle = vbcross Line (10, 500)- (1000, 1000), vbblack, B Private Sub Form1_Paint4(ByVal sender As Object, ByVal e As _ ' Draw a solid red rectangle. Dim SBrush As New System.Drawing.SolidBrush _ (System.Drawing.Color.Red) e.graphics.drawrectangle(pens.red, 2, 2, 70, 40) e.graphics.fillrectangle(sbrush, 2, 2, 70, 40) ' Draw a rectangle filled with a crosshatch pattern. Dim HBrush As New System.Drawing.Drawing2D.HatchBrush( _ System.Drawing.Drawing2D.HatchStyle.Cross, _ System.Drawing.Color.Black, System.Drawing.Color.Transparent) e.graphics.drawrectangle(pens.black, 2, 40, 70, 40) e.graphics.fillrectangle(hbrush, 2, 40, 70, 40) フォーム上での画像の表示 次のコードは グラフィックスメソッドを使って 実行時にフォーム上に画像を表示する方法を示す のコード例では PaintPicture メソッドを使用する のコード例では DrawImage メソッドを使用する ' Create a stdpicture object. Dim Pict1 As New stdpicture Pict1 = LoadPicture("C: Windows Greenstone.bmp") PaintPicture Pict1, 0, 0 Private Sub Form1_Paint5(ByVal sender As Object, ByVal e As _ ' Create a Bitmap object. Dim Pict1 As New Bitmap("C: Windows Greenstone.bmp") e.graphics.drawimage(pict1, 0, 0) -6-

フォーム上でのテキストの表示 次のコードは グラフィックスメソッドを使って 実行時にフォーム上にテキスト文字列を表示する方法を示す のコード例では Print メソッドを使用する のコード例では DrawString メソッドを使用する Me.Font.Size = 24 Me.Font.Bold = True Me.ForeColor = vbred Print "Hello World!" Private Sub Form1_Paint6(ByVal sender As Object, ByVal e As _ Dim TextFont As New System.Drawing.Font("Arial", 24, FontStyle.Bold) Dim TextBrush As New System.Drawing.SolidBrush(System.Drawing.Color.Red) e.graphics.drawstring("hello World!", TextFont, TextBrush, 10, 10) TextFont.Dispose( ) TextBrush.Dispose( ) 文字列の高さと幅の確認 次のコードは グラフィックスメソッドを使って 実行時にフォーム上の文字列のサイズを確認し 其の周囲に四角形を描画する方法を示す のコード例では TextHeight メソッドと TextWidth メソッドを使用する のコード例では MeasureString メソッドを使用する 此のメソッドは SizeF 構造体を返す Me.Font.Size = 24 Me.Font.Bold = True Me.ForeColor = vbred Print "Hello World!" Line (0, 0)-(TextWidth("Hello World!"), TextHeight("Hello World!")), vbblack, B Private Sub Form1_Paint7(ByVal sender As Object, ByVal e As _ Dim TextFont As New System.Drawing.Font("Arial", 24, FontStyle.Bold) Dim TextBrush As New System.Drawing.SolidBrush(System.Drawing.Color.Red) e.graphics.drawstring("hello World!", TextFont, TextBrush, 10, 10) Dim TextSize As New System.Drawing.SizeF -7-

TextSize = e.graphics.measurestring("hello World!", TextFont) e.graphics.drawrectangle(pens.black, 10, 10, TextSize.Width, TextSize.Height) TextFont.Dispose( ) TextBrush.Dispose( ) 単一のピクセルの描画 次のコードは グラフィックスメソッドを使って 実行時にフォーム上の 1 ピクセルの色を変更する方法を示す のコード例では PSet メソッドを使用する のコード例では DrawEllipse メソッドを使用し Height パラメータと Width パラメータを 1 に設定する Me.DrawWidth = 1 PSet (1000, 1000), vbred Private Sub Form1_Paint8(ByVal sender As Object, ByVal e As _ e.graphics.drawellipse(pens.red, 70, 70, 1, 1) 単一ピクセルの色の確認 次のコードは グラフィックスメソッドを使って 実行時にフォーム上の画像の指定した位置に有る 1 ピクセルの色を確認し 其の色で四角形を塗り潰して描画する方法を示す のコード例では Point メソッドを使ってカラー値を取得する のコード例では GetPixel メソッドを使用する Dim PixelColor As Long Picture1.Picture = LoadPicture("C: Windows Greenstone.bmp") PixelColor = Picture1.Point(10, 10) FillColor = PixelColor Line (0, 0)-(100, 500), PixelColor, B Private Sub Form1_Paint9(ByVal sender As Object, ByVal e As _ Dim Pict1 As New Bitmap("C: Windows Greenstone.bmp") Picture1.Image = Pict1 Dim PixelColor As Color = Pict1.GetPixel(4, 4) Dim PixelBrush As New SolidBrush(PixelColor) -8-

e.graphics.fillrectangle(pixelbrush, 0, 0, 100, 100) グラフィックスプロパティとメソッドの対応関係 次の表は のグラフィックスプロパティやメソッドと で其等に相当する物を示す AutoRedraw プロパティ Circle メソッド での同等物新規実装 ( グラフィックスを永続化するには Paint イベントにグラフィックスメソッドを記述する ) DrawEllipse メソッド ClipControls プロパティ 新規実装 (ClipControls プロパティは不要に成った ) Cls メソッド Clear メソッド CurrentX プロパティ 各種グラフィックスメソッドの x パラメータ ( 例えば DrawRectangle (pen, x, y, width, height)) CurrentY プロパティ 各種グラフィックスメソッドの y パラメータ ( 例えば DrawRectangle (pen, x, y, width, height)) DrawMode プロパティ 新規実装 (DrawMode プロパティは不要に成った ) DrawStyle プロパティ DashStyle プロパティ DrawWidth プロパティ Width プロパティ FillColor プロパティ SolidBrush オブジェクト FillStyle プロパティ HatchBrush オブジェクト HasDC プロパティ 新規実装 (GDI+ では デバイスコンテキストは不要に成った ) HDC プロパティ 新規実装 (GDI+ では デバイスコンテキストは不要に成った ) Image プロパティ 新規実装 Line メソッド DrawLine メソッド PaintPicture メソッド DrawImage メソッド Point メソッド 直接対応する項目は無い ( ビットマップには Bitmap.GetPixel を使用 する フォームやコントロールには BackColor プロパティを使用する ) Print メソッド DrawString メソッド Pset メソッド DrawEllipse メソッド FillEllipse メソッド TextHeight プロパティ MeasureString メソッド TextWidth プロパティ アップグレード アプリケーションを から にアップグレードすると グラフィックスメソッドはアップグレードされず 警告がコードに挿入される GDI と GDI+ では大きな違いが有るので 既存のグラフィックスコードは書き直す必要が有る -9-

座標系 では フォームやコントロールの座標は とは異なる方法で表現される フォームのサイズ変更や移動の方法も異なる 概念の違い では フォームやコントロールの座標は twip で表現される では 座標はピクセルで表現される Height プロパティと Width プロパティ では Height プロパティと Width プロパティが フォームやコントロールのサイズ変更に使用される では Size プロパティを使って 高さと幅を一度に変更する事も出来る Move メソッド では フォームやコントロールの位置を実行時に変更する為に Move メソッドを使用する では Move は SetBounds メソッドに置き換えられ 座標はピクセルで表現される ScaleMode プロパティ では ScaleMode プロパティを使って別の座標系を定義する事も出来る Visual Basic 2005 では サポートされる座標系はピクセル丈で有る ScaleMode プロパティと其れと関連するプロパティやメソッド (Scale ScaleHeight ScaleLeft ScaleTop ScaleWidth ScaleX ScaleY) は ではサポートされない 詳細に付いては ScaleMode がサポートされて居ない を参照され度い 座標を扱うコードの変更 次のコード例では と でのコーディングテクニックの違いを示す フォームのサイズ変更 実行時にフォームのサイズを変更する方法の例を次に示す ' Measurements are in twips. Me.Width = 8000 Me.Height = 6000 ' Measurements are in pixels. Me.Size = New System.Drawing.Size(640, 480) -10-

コントロールの移動 実行時にコントロールを移動する方法の例を次に示す ' Move and retain original size. CommandButton2.Move 2000, 1000 ' Move and resize to 1200 by 800 twips. CommandButton1.Move 0, 0, 1200, 800 ' Move and retain original size. Button2.SetBounds(20, 10, 0, 0, BoundsSpecified.X Or BoundsSpecified.Y) ' Move and resize to 120 by 80 pixels. Button1.SetBounds(0, 0, 120, 80) アックアップグレード アプリケーションを にアップグレードすると フォームとコントロールの Height プロパティと Width プロパティの値は自動的にピクセルに変換される 元のアプリケーションで ScaleMode プロパティを使用して居た場合 アップグレードツールは ScaleMode プロパティのデザイン時設定が twip で有ると仮定する 其れ以外の場合は 正しく変換されない為 修正が必要で有る 詳細に付いては ScaleMode がサポートされて居ない を参照され度い -11-

ScaleMode がサポートされて居ない 概要 では ScaleMode プロパティを使用して フォームや PictureBox コントロールの座標系を既定スケールで有る twip から変更出来た では複数の座標系はサポートされず ピクセル丈がサポートされて居る アップグレードの時 座標系は自動的に twip からピクセルに変換される コードで ScaleMode プロパティを実行時に設定して居る場合は コンパイルエラーが発生する為 コードを変更する必要が有る アップグレードツールは ScaleMode プロパティのデザイン時設定が twip で有る事を仮定して居る 其れ以外の場合は 正しく変換されない為 修正が必要で有る 移行方法 先ず ScaleMode プロパティを設定して居るコード行を削除する 次に ScaleMode プロパティに基づいたコードを見直し 必要に応じて計算を変更する インチ単位の ScaleMode を使用していたプロシージャを変更する方法の例を次のコードに示す Form1.ScaleMode = vbinches Text1.Move 2, 1 上のプロシージャは テキストボックスをフォームの左上隅から右に 2 インチ 下に 1 インチ移動する アップグレードすると 下記のコードに変換される ' After upgrade to 'UPGRADE ISSUE: Constant vbinches was not upgraded. 'UPGRADE ISSUE: Form property Form1.ScaleMode is not supported. ' The next line must be removed in order to compile. Form1.ScaleMode = vbinches ' Twips are converted to pixels, but the original inch values are used. Text1.SetBounds(VB6.TwipsToPixelsX(2), VB6.TwipsToPixelsX(1),... アップグレードすると 此のプロシージャは テキストボックスを右に 2 ピクセル 下に 1 ピクセル移動する 此れは目的の動作と異なるので 下記の様に訂正する ' Modified code ' Removed the ScaleMode line. ' Convert the scale (1 inch = 1440 twips). Text1.SetBounds(VB6.TwipsToPixelsX(2880), VB6.TwipsToPixelsX(1440),... インチに 1440 を掛けて twip をピクセルに変換する事に依り 元の コードと同じ結果が得られる -12-