- hemf
- Handle to the EMF to be changed.
- width
- Amount by which to scale the enhanced metafile's original width.
- height
- Amount by which to scale the enhanced metafile's original height.
Visual Basic (Declaration) | |
---|---|
Public Shared Function ChangeFromEmf( _ ByVal hemf As IntPtr, _ ByVal width As Integer, _ ByVal height As Integer _ ) As RasterImage |
Visual Basic (Usage) | Copy Code |
---|---|
Dim hemf As IntPtr Dim width As Integer Dim height As Integer Dim value As RasterImage value = RasterImageConverter.ChangeFromEmf(hemf, width, height) |
Parameters
- hemf
- Handle to the EMF to be changed.
- width
- Amount by which to scale the enhanced metafile's original width.
- height
- Amount by which to scale the enhanced metafile's original height.
Return Value
The newly created Leadtools.RasterImage object.
This example loads a Leadtools.RasterImage, converts it to a EMF, then converts the EMF back to a Leadtools.RasterImage.
Visual Basic | Copy Code |
---|---|
Public Sub ChangeFromEmfExample() Dim codecs As New RasterCodecs() Dim hemf As IntPtr ' Load an image Using image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"), 24, CodecsLoadByteOrder.BgrOrGray, 1, 1) ' Change to EMF hemf = RasterImageConverter.ChangeToEmf(image) End Using ' Convert the EMF back to a RasterImage preserving the size Using image As RasterImage = RasterImageConverter.ChangeFromEmf(hemf, 0, 0) ' Save it to disk codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Image1_ChangeToEmf.bmp"), RasterImageFormat.Bmp, 24) End Using ' Clean up codecs.Dispose() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class |
C# | Copy Code |
---|---|
public void ChangeFromEmfExample() { RasterCodecs codecs = new RasterCodecs(); IntPtr hemf; // Load an image using(RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"), 24, CodecsLoadByteOrder.BgrOrGray, 1, 1)) { // Change to EMF hemf = RasterImageConverter.ChangeToEmf(image); } // Convert the EMF back to a RasterImage preserving the size using(RasterImage image = RasterImageConverter.ChangeFromEmf(hemf, 0, 0)) { // Save it to disk codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Image1_ChangeToEmf.bmp"), RasterImageFormat.Bmp, 24); } // Clean up codecs.Dispose(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; } |
If this function is successful, hemf is freed.
The enhanced metafile can be loaded at the original dimension or scaled by using the width and height parameters.
If width == 0 and height == 0 - the enhanced metafile is loaded at the size present in the file.
If width == 0 and height > 0 - the enhanced metafile is stretched so that it has the height height (preserving the aspect ratio).
If width > 0 and height == 0 - the enhanced metafile is stretched so that it has the width width (preserving the aspect ratio).
If width > 0 and height > 0 - the enhanced metafile is stretched so that it has the width width and height height (the aspect ratio is ignored).
This function does not support signed images.
For more information refer to RasterImage and GDI/GDI+.
Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)