RecursiveAI.OneImage.Metafile
1.11.1
dotnet add package RecursiveAI.OneImage.Metafile --version 1.11.1
NuGet\Install-Package RecursiveAI.OneImage.Metafile -Version 1.11.1
<PackageReference Include="RecursiveAI.OneImage.Metafile" Version="1.11.1" />
<PackageVersion Include="RecursiveAI.OneImage.Metafile" Version="1.11.1" />
<PackageReference Include="RecursiveAI.OneImage.Metafile" />
paket add RecursiveAI.OneImage.Metafile --version 1.11.1
#r "nuget: RecursiveAI.OneImage.Metafile, 1.11.1"
#:package RecursiveAI.OneImage.Metafile@1.11.1
#addin nuget:?package=RecursiveAI.OneImage.Metafile&version=1.11.1
#tool nuget:?package=RecursiveAI.OneImage.Metafile&version=1.11.1
RecursiveAI.OneImage.Metafile
Windows metafile support for OneImage.
- EMF and WMF as image formats.
new ImageConfiguration().Add(MetafileFormat.Instance).Add(WmfFormat.Instance)letsImage.Loadread.emfand.wmffiles (placeable or not; a WMF that embeds an EMF plays the EMF). The picture is drawn at the size you ask for (Resize/Thumbnailrasterize at the final size instead of scaling pixels), with the drawing engine's anti-aliasing. - A drawing-command stream.
MetafileDocument.Parse(bytes)resolves every record (mapping modes, world transforms, objects, paths, regions, raster operations) into a short list of device-independent commands: fill a path, stroke a path, draw a bitmap, draw text, change the clip. Walk it with aDrawingCommandVisitorto convert a picture to another vector format or to your own renderer. - Safe on hostile files. Sizes are checked against
MetafileLimitsbefore anything is allocated, and nothing in a file can run code, read other files or reach the network. Anything not interpreted is reported as a diagnostic instead of being dropped silently.
var config = new ImageConfiguration().Add(MetafileFormat.Instance).Add(WmfFormat.Instance);
Image.Load("drawing.emf", new LoadOptions { Configuration = config }).Resize(width: 800).Save("drawing.png");
MetafileDocument doc = MetafileDocument.Load("drawing.emf"); // or a .wmf
doc.Play(new MyVisitor());
Text needs fonts: pass a MetafileFontOptions (your own FontCollection, system fonts, substitutions) to MetafileFormat. The package depends on RecursiveAI.OneImage and RecursiveAI.OneImage.Text at exactly the same version.
See docs/metafile.md for the command model, the record coverage and the known gaps.
Licensed under MIT OR Apache-2.0.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- RecursiveAI.OneImage (= 1.11.1)
- RecursiveAI.OneImage.Text (= 1.11.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on RecursiveAI.OneImage.Metafile:
| Package | Downloads |
|---|---|
|
RecursiveAI.OneDocument.Rendering
Read, write, calculate, template and render Word, Excel and PowerPoint documents (OOXML, legacy binary, RTF, ODF) in pure .NET. Not affiliated with Microsoft. Layout and rendering of documents, workbooks and presentations to tagged PDF and PNG for OneDocument, with its own Office layout engine, charts, SmartArt, equations and metafile drawing. |
GitHub repositories
This package is not used by any popular GitHub repositories.
See CHANGELOG.md in the repository.