3

どの検索用語を使用すればよいかわかりませんが、これは単純なはずです...文字列の幅をインチ単位で決定するにはどうすればよいですか。

        Dim sSize As System.Drawing.SizeF
        Dim fFont As New Font("Arial", 12)
        sSize = Me.CreateGraphics().MeasureString(txtAddr.Text, fFont)

ここでの単位は、IDE が使用しているものです。それが定数値かどうかはわかりませんが、変換が簡単な場合はそうです。

とにかく、指定されたフォントを使用してテキストが 100% で印刷されたときに、返された単位をインチに変換したいと考えています。それ、どうやったら出来るの?


ありがとうハンス!

        Dim boxGraphics As Graphics = txtAddr.CreateGraphics()
        Dim sSize As System.Drawing.SizeF = boxGraphics.MeasureString(txtAddr.Text, New Font("Arial", 12))
        Dim iInches As Single = sSize.Width / boxGraphics.DpiX

興味のある方のための DYMO LabelWriter 450 コードの始まり:

        ' project ref to DYMO.Label.Framework .net 3.5/4
        ' Imports DYMO.Label.Framework
        Dim olabel As Label
        olabel = Label.Open("H:\INFO\Forms\ADMIN\Dymo Labels\APCDAddress.label")
        olabel.SetObjectText("ADDRESS", txtAddr.Text) ' case sensitive
        olabel.Print("\\PC3090-117\DYMO LabelWriter 450 Twin Turbo")
        MsgBox("Printed")

ラベルには大きすぎる可能性のある住所テキストを処理するコードを追加する予定です。したがって、OP. DYMO レイアウトは、テキストに合わせて縮小するように設定できますが、住所ラベルを作成する際には実際的な制限があります。

4

1 に答える 1