LEADTOOLS GDI/GDI+ (Leadtools.Drawing assembly)

ChangeFromEmf(IntPtr,Int32,Int32) Method

Show in webframe
Example 





Handle to the EMF to be changed.
Amount by which to scale the enhanced metafile's original width.
Amount by which to scale the enhanced metafile's original height.
Changes a Windows Enhanced Metafile (EMF) into a LEADTOOLS Leadtools.RasterImage object and, if successful, frees the Enhanced Metafile.
Syntax
public static RasterImage ChangeFromEmf( 
   IntPtr hemf,
   int width,
   int height
)
'Declaration
 
Public Overloads Shared Function ChangeFromEmf( _
   ByVal hemf As IntPtr, _
   ByVal width As Integer, _
   ByVal height As Integer _
) As RasterImage
'Usage
 
Dim hemf As IntPtr
Dim width As Integer
Dim height As Integer
Dim value As RasterImage
 
value = RasterImageConverter.ChangeFromEmf(hemf, width, height)

            

            
public:
static RasterImage^ ChangeFromEmf( 
   IntPtr hemf,
   int width,
   int 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.
Remarks

Some metafiles do not have a background color, and hence, when the metafile is used to create a Leadtools.RasterImage object, the area not covered by the metafile objects will contain the default image background color (black). To create a raster image from a metafile like this with a specific background color, use ChangeFromEmf(hemf, width, height, backColor).

If this method 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 method does not support signed images.

For more information refer to RasterImage and GDI/GDI+.

Example
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Drawing
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Color

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
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Drawing;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;

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";
}
Requirements

Target Platforms

See Also

Reference

RasterImageConverter Class
RasterImageConverter Members
Overload List
ChangeFromEmf(hemf, width, height, backColor)
ChangeFromWmf(IntPtr,Int32,Int32) Method
FromEmf
FromWmf
ChangeToEmf Method
ChangeToWmf Method
ToEmf
ToWmf

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.