ReaderWmfReadGeometry Method |
Name | Description | |
---|---|---|
ReadGeometry(Stream) |
Reads metafile (emf or wmf) from fileName and returns System.Windows.Controls.Image with elements as Drawings (DrawingGeometry, EllipseGeometry, GlyphRunDrawing etc.) with no geometry optimization.
| |
ReadGeometry(String) |
Reads metafile (emf or wmf) from fileName and returns System.Windows.Controls.Image with elements as Drawings (DrawingGeometry, EllipseGeometry, GlyphRunDrawing etc.) with no geometry optimization.
| |
ReadGeometry(Stream, GeometrySettings) |
Reads metafile (emf or wmf) from fileName and returns System.Windows.Controls.Image with elements as Drawings (DrawingGeometry, EllipseGeometry, GlyphRunDrawing etc.).
| |
ReadGeometry(String, GeometrySettings) |
Reads metafile (emf or wmf) from fileName and returns System.Windows.Controls.Image with elements as Drawings (DrawingGeometry, EllipseGeometry, GlyphRunDrawing etc.).
|
Drawing objects do not derive from the FrameworkElement class and provide a lighter-weight implementation for rendering shapes, images, and text. Because of this Drawing objects on one side lack support for Layout System, input, and focus, but on the other side have much better performance and lower memory consumption.
Returned Drawing has much better performance as Shapes that are returned with Read method.
If better layout support, input, focus and other functionality is needed use Read method instead that returns elements as Shapes.
It is also possible to optimize the read Drawing objects with the GeometrySettings objects that is passed to the ReadGeometry method.
Ab2d.Common.ReaderWmf.GeometrySettings settings; // gets Drawing objects optimized for best performance // NOTE: Because of heavy optimization it is possible that some anomalies appear on the image settings = Ab2d.Common.ReaderWmf.GeometrySettings.FullOptimization; Image sampleImage = myReader.ReadGeometry(@"c:\mySample.wmf", settings);
Image clipartFromResource; Ab2d.Common.ReaderWmf.GeometrySettings settings; // gets Drawing objects optimized for best performance // NOTE: Because of heavy optimization it is possible that some anomalies appear on the image settings = Ab2d.Common.ReaderWmf.GeometrySettings.FullOptimization; Uri uri = new Uri("/cliparts/mySample.emf", UriKind.Relative); using (Stream metafileStream = Application.GetResourceStream(uri).Stream) { clipartFromResource = Ab2d.ReaderWmf.Instance.ReadGeometry(metafileStream, settings); }
Drawing objects do not derive from the FrameworkElement class and provide a lighter-weight implementation for rendering shapes, images, and text. Because of this Drawing objects on one side lack support for Layout System, input, and focus, but on the other side have much better performance and lower memory consumption.
Returned Drawing has much better performance as Shapes that are returned with Read method.
If better layout support, input, focus and other functionality is needed use Read method instead that returns elements as Shapes.
It is also possible to optimize the read Drawing objects with the GeometrySettings objects that is passed to the ReadGeometry method.
Ab2d.Common.ReaderWmf.GeometrySettings settings; // gets Drawing objects optimized for best performance // NOTE: Because of heavy optimization it is possible that some anomalies appear on the image settings = Ab2d.Common.ReaderWmf.GeometrySettings.FullOptimization; Image sampleImage = myReader.ReadGeometry(@"c:\mySample.wmf", settings);
Image clipartFromResource; Ab2d.Common.ReaderWmf.GeometrySettings settings; // gets Drawing objects optimized for best performance // NOTE: Because of heavy optimization it is possible that some anomalies appear on the image settings = Ab2d.Common.ReaderWmf.GeometrySettings.FullOptimization; Uri uri = new Uri("/cliparts/mySample.emf", UriKind.Relative); using (Stream metafileStream = Application.GetResourceStream(uri).Stream) { clipartFromResource = Ab2d.ReaderWmf.Instance.ReadGeometry(metafileStream, settings); }