Freigeben über


Renderer.InkSpaceToPixel-Methode (Graphics, Point%)

Konvertiert eine Position in Freihandbereichkoordinaten in eine Position im Pixelbereich, wobei das Graphics-Objekt für die Konvertierung verwendet wird.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Syntax

'Declaration
Public Sub InkSpaceToPixel ( _
    g As Graphics, _
    ByRef pt As Point _
)
'Usage
Dim instance As Renderer
Dim g As Graphics
Dim pt As Point

instance.InkSpaceToPixel(g, pt)
public void InkSpaceToPixel(
    Graphics g,
    ref Point pt
)
public:
void InkSpaceToPixel(
    Graphics^ g, 
    Point% pt
)
public void InkSpaceToPixel(
    Graphics g,
    /** @ref */Point pt
)
public function InkSpaceToPixel(
    g : Graphics, 
    pt : Point
)

Parameter

Hinweise

Die InkSpaceToPixel-Methode wendet die Objekttransformation des Renderer-Objekts und die Ansichtstransformation an, und anschließend wird die Konvertierung aus HIMETRIC-Einheiten in Pixel ausgeführt.

Beispiele

In diesem Beispiel werden das umgebende Rechteck eines Ink-Objekts abgerufen und die Mitte des umgebenden Rechtecks bestimmt. Der Mittelpunkt wird anschließend in Pixelkoordinaten konvertiert und vom Graphics-Objekt zum Zeichnen eines kleinen roten Kreises verwendet.

' get the ink bounds (ink space units)
Dim inkBounds As Rectangle = mInkOverlay.Ink.GetBoundingBox()
' create a Point in the center of the ink bounds (ink space units)
Dim centerPt As Point = _
       New Point(inkBounds.X + (inkBounds.Width / 2), _
                 inkBounds.Y + (inkBounds.Height / 2))

Using g As Graphics = mInkOverlay.AttachedControl.CreateGraphics()
    ' convert to pixel space
    mInkOverlay.Renderer.InkSpaceToPixel(g, centerPt)
    ' draw a small circle
    g.DrawEllipse(Pens.Red, centerPt.X - 5, centerPt.Y - 5, 10, 10)
End Using
// get the ink bounds (ink space units)
Rectangle inkBounds = mInkOverlay.Ink.GetBoundingBox();
// create a Point in the center of the ink bounds (ink space units)
Point centerPt = 
    new Point(inkBounds.X + (inkBounds.Width / 2), 
              inkBounds.Y + (inkBounds.Height / 2));

using (Graphics g = mInkOverlay.AttachedControl.CreateGraphics())
{
    // convert to pixel space
    mInkOverlay.Renderer.InkSpaceToPixel(g, ref centerPt);
    // draw a small circle
    g.DrawEllipse(Pens.Red, centerPt.X - 5, centerPt.Y - 5, 10, 10);
}

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

Renderer-Klasse

Renderer-Member

InkSpaceToPixel-Überladung

Microsoft.Ink-Namespace

Renderer.PixelToInkSpace