Gets the default picture for an
AnnRubberStampObject type.
Supported in Silverlight, Windows Phone 7
Syntax
Example
This sample does the following:
- displays the default rubberstamp picture and displays it
- restores original rubberstamp picture and displays
- changes to new style and displays
Visual Basic | Copy Code |
---|
Public Sub AnnRubberStampObject_GetDefaultPicture(ByVal dc As DrawingContext, ByVal filenameNewPicture As String)
Dim type As AnnRubberStampType = AnnRubberStampType.Important
' first draw the original picture for the Important rubber stamp
Dim rc As Rect = New Rect(0, 0, 240, 120)
DrawRubberStampPicture(dc, rc, type)
' now change the picture to one of our own and redraw it
Dim img As BitmapSource = New BitmapImage(New Uri(filenameNewPicture))
Dim picture As AnnPicture = New AnnPicture(img)
picture.TransparentMode = AnnTransparentMode.None
AnnRubberStampObject.SetDefaultPicture(type, picture)
' at this point, all new AnnRubberStampObject with Type = Important will use this new picture
rc.Offset(0, rc.Height + 10)
DrawRubberStampPicture(dc, rc, type)
' finally, set the picture back to the original value and redraw it
AnnRubberStampObject.SetUseOriginalPicture(type, True)
rc.Offset(0, rc.Height + 10)
DrawRubberStampPicture(dc, rc, type)
End Sub
Private Sub DrawRubberStampPicture(ByVal dc As DrawingContext, ByVal rc As Rect, ByVal type As AnnRubberStampType)
' get the default picture for the rubber stamp
Dim pic As AnnPicture = AnnRubberStampObject.GetDefaultPicture(type)
' draw it
If Not pic.Image Is Nothing Then
dc.DrawImage(pic.Image, rc)
End If
End Sub |
C# | Copy Code |
---|
public void AnnRubberStampObject_GetDefaultPicture(DrawingContext dc, string filenameNewPicture)
{
AnnRubberStampType type = AnnRubberStampType.Important;
// first draw the original picture for the Important rubber stamp
Rect rc = new Rect(0, 0, 240, 120);
DrawRubberStampPicture(dc, rc, type);
// now change the picture to one of our own and redraw it
BitmapSource img = new BitmapImage(new Uri(filenameNewPicture));
AnnPicture picture = new AnnPicture(img);
picture.TransparentMode = AnnTransparentMode.None;
AnnRubberStampObject.SetDefaultPicture(type, picture);
// at this point, all new AnnRubberStampObject with Type = Important will use this new picture
rc.Offset(0, rc.Height + 10);
DrawRubberStampPicture(dc, rc, type);
// finally, set the picture back to the original value and redraw it
AnnRubberStampObject.SetUseOriginalPicture(type, true);
rc.Offset(0, rc.Height + 10);
DrawRubberStampPicture(dc, rc, type);
}
private void DrawRubberStampPicture(DrawingContext dc, Rect rc, AnnRubberStampType type)
{
// get the default picture for the rubber stamp
AnnPicture pic = AnnRubberStampObject.GetDefaultPicture(type);
// draw it
if(pic.Image != null)
{
dc.DrawImage(pic.Image, rc);
}
} |
SilverlightCSharp | Copy Code |
---|
public void AnnRubberStampObject_GetDefaultPicture(WriteableBitmap wb, string filenameNewPicture)
{
AnnRubberStampType type = AnnRubberStampType.Important;
// first draw the original picture for the Important rubber stamp
Rect rc = new Rect(0, 0, 240, 120);
DrawRubberStampPicture(ref wb, rc, type);
// now change the picture to one of our own and redraw it
BitmapSource img = new BitmapImage(new Uri(filenameNewPicture));
AnnPicture picture = new AnnPicture(img);
picture.TransparentMode = AnnTransparentMode.None;
AnnRubberStampObject.SetDefaultPicture(type, picture);
// at this point, all new AnnRubberStampObject with Type = Important will use this new picture
rc.Y += rc.Height + 10;
DrawRubberStampPicture(ref wb, rc, type);
// finally, set the picture back to the original value and redraw it
AnnRubberStampObject.SetUseOriginalPicture(type, true);
rc.Y += rc.Height + 10;
DrawRubberStampPicture(ref wb, rc, type);
}
private void DrawRubberStampPicture(ref WriteableBitmap wb, Rect rc, AnnRubberStampType type)
{
// get the default picture for the rubber stamp
AnnPicture pic = AnnRubberStampObject.GetDefaultPicture(type);
// draw it
if (pic.Image != null)
{
Canvas cvs = new Canvas();
cvs.RenderTransformOrigin = new Point(rc.X, rc.Y);
cvs.Width = rc.Width;
cvs.Height = rc.Height;
wb = new WriteableBitmap(pic.Image);
wb.Render(cvs, null);
}
} |
SilverlightVB | Copy Code |
---|
Public Sub AnnRubberStampObject_GetDefaultPicture(ByVal wb As WriteableBitmap, ByVal filenameNewPicture As String)
Dim type As AnnRubberStampType = AnnRubberStampType.Important
' first draw the original picture for the Important rubber stamp
Dim rc As Rect = New Rect(0, 0, 240, 120)
DrawRubberStampPicture(wb, rc, type)
' now change the picture to one of our own and redraw it
Dim img As BitmapSource = New BitmapImage(New Uri(filenameNewPicture))
Dim picture As AnnPicture = New AnnPicture(img)
picture.TransparentMode = AnnTransparentMode.None
AnnRubberStampObject.SetDefaultPicture(type, picture)
' at this point, all new AnnRubberStampObject with Type = Important will use this new picture
rc.Y += rc.Height + 10
DrawRubberStampPicture(wb, rc, type)
' finally, set the picture back to the original value and redraw it
AnnRubberStampObject.SetUseOriginalPicture(type, True)
rc.Y += rc.Height + 10
DrawRubberStampPicture(wb, rc, type)
End Sub
Private Sub DrawRubberStampPicture(ByRef wb As WriteableBitmap, ByVal rc As Rect, ByVal type As AnnRubberStampType)
' get the default picture for the rubber stamp
Dim pic As AnnPicture = AnnRubberStampObject.GetDefaultPicture(type)
' draw it
If Not pic.Image Is Nothing Then
Dim cvs As Canvas = New Canvas()
cvs.RenderTransformOrigin = New Point(rc.X, rc.Y)
cvs.Width = rc.Width
cvs.Height = rc.Height
wb = New WriteableBitmap(pic.Image)
wb.Render(cvs, Nothing)
End If
End Sub |
Remarks
Requirements
Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)
See Also