IronSoftware.System.Drawing
v2024.12.3
IronSoftware.Drawing est une bibliothèque open source développée à l'origine par Iron Software qui aide les ingénieurs logiciels C # à remplacer System.Drawing.Common dans .NET Projects.
IronSoftware.Drawing.AnyBitmap et les formats bitmap / image bitmap / image populaires pris en charge:| Support de casting implicite | À la prise en charge de AnyBitmap | De la prise en charge de AnyBitmap |
|---|---|---|
System.Drawing.Bitmap | ✅ | ✅ |
System.Drawing.Image | ✅ | ✅ |
SkiaSharp.SKBitmap | ✅ | ✅ |
SkiaSharp.SKImage | ✅ | ✅ |
SixLabors.ImageSharp | ✅ | ✅ |
Microsoft.Maui.Graphics.Platform.PlatformImage | ✅ | ✅ |
IronSoftware.Drawing.Color et les formats de couleurs populaires suivants pris en charge:| Support de casting implicite | Pour soutenir Color | De Color prise en charge |
|---|---|---|
SkiaSharp.SKColor | ✅ | ✅ |
SixLabors.ImageSharp.Color | ✅ | ✅ |
SixLabors.ImageSharp.PixelFormats | ✅ | ✅ |
IronSoftware.Drawing.Rectangle et suivant les formats rectangulaires populaires pris en charge:| Support de casting implicite | Pour Rectangle le rectangle | Du Rectangle pris en charge | À RectangleF pris en charge | De RectangleF pris en charge |
|---|---|---|---|---|
System.Drawing.Rectangle | ✅ | ✅ | ||
System.Drawing.RectangleF | ✅ | ✅ | ||
SkiaSharp.SKRect | ✅ | ✅ | ||
SkiaSharp.SKRectI | ✅ | ✅ | ||
SixLabors.ImageSharp.Rectangle | ✅ | ✅ | ||
SixLabors.ImageSharp.RectangleF | ✅ | ✅ |
IronSoftware.Drawing.Size et suivant les formats de taille populaires pris en charge:| Support de casting implicite | À Size prise en charge | De Size prise en charge | À SizeF pris en charge | De SizeF pris en charge |
|---|---|---|---|---|
System.Drawing.Size | ✅ | ✅ | ||
System.Drawing.SizeF | ✅ | ✅ | ||
SkiaSharp.SKSize | ✅ | ✅ | ||
SkiaSharp.SKSizeI | ✅ | ✅ | ||
SixLabors.ImageSharp.Size | ✅ | ✅ | ||
SixLabors.ImageSharp.SizeF | ✅ | ✅ | ||
Microsoft.Maui.Graphics.Size | ✅ | ✅ | ||
Microsoft.Maui.Graphics.SizeF | ✅ | ✅ |
IronSoftware.Drawing.Font et suivant les formats de police populaires pris en charge:| Support de casting implicite | À Font soutenue | De Font soutenue |
|---|---|---|
System.Drawing.Font | ✅ | ✅ |
SkiaSharp.SKFont | ✅ | ✅ |
SixLabors.Fonts.Font | ✅ | ✅ |
IronSoftware.Drawing.Point et IronSoftware.Drawing.PointF et le support suivant:| Support de casting implicite | Pour Point pris en charge | Du Point pris en charge | À PointF pris en charge | Du PointF pris en charge |
|---|---|---|---|---|
System.Drawing.Point | ✅ | ✅ | ||
System.Drawing.PointF | ✅ | ✅ | ||
SixLabors.ImageSharp.Point | ✅ | ✅ | ||
SixLabors.ImageSharp.PointF | ✅ | ✅ | ||
Microsoft.Maui.Graphics.Point | ✅ | ✅ | ||
Microsoft.Maui.Graphics.PointF | ✅ | ✅ | ||
SkiaSharp.SKPoint | ✅ | ✅ | ||
SkiaSharp.SKPointI | ✅ | ✅ |
L'installation du package Ironsoftware.Drawing NuGet est rapide et facile, veuillez installer le package comme celui-ci:
PM> Install-Package IronSoftware.System.Drawing
Alternativement, téléchargez directement sur le site officiel de NuGet.
Une fois installé, vous pouvez commencer par l'ajout using IronSoftware.Drawing; en haut de votre code C #.
AnyBitmap using IronSoftware . Drawing ;
// Create a new AnyBitmap object
var bitmap = AnyBitmap . FromFile ( "FILE_PATH" ) ;
bitmap . SaveAs ( "result.jpg" ) ;
var bytes = bitmap . ExportBytes ( ) ;
var resultExport = new System . IO . MemoryStream ( ) ;
bitmap . ExportStream ( resultExport , AnyBitmap . ImageFormat . Jpeg , 100 ) ;
// Casting between System.Drawing.Bitmap and IronSoftware.Drawing.AnyBitmap
System . Drawing . Bitmap image = new System . Drawing . Bitmap ( "FILE_PATH" ) ;
IronSoftware . Drawing . AnyBitmap anyBitmap = image ;
anyBitmap . SaveAs ( "result-from-casting.png" ) ;
// Creates a Multi-page Tiff-style AnyBitmap from an Image array
List < AnyBitmap > bitmaps = new List < AnyBitmap > ( )
{
AnyBitmap . FromFile ( "FILE_PATH_1" ) ,
AnyBitmap . FromFile ( "FILE_PATH_2" )
} ;
AnyBitmap anyBitmap = AnyBitmap . CreateMultiFrameTiff ( bitmaps ) ;
// Creates a Multi-page Tiff-style AnyBitmap from a fully qualified file path array
List < string > imagePaths = new List < string > ( )
{
"FILE_PATH_1" ,
"FILE_PATH_2"
} ;
AnyBitmap anyBitmap = AnyBitmap . CreateMultiFrameTiff ( imagePaths ) ;
// Manipulate image frames
int frameCount = anyBitmap . FrameCount ;
List < AnyBitmap > frames = ( List < AnyBitmap > ) anyBitmap . GetAllFrames ;Color using IronSoftware . Drawing ;
// Create a new Color object
Color fromHex = new Color ( "#191919" ) ;
Color fromRgb = new Color ( 255 , 255 , 0 ) ;
Color fromEnum = Color . Crimson ;
// Casting between System.Drawing.Color and IronSoftware.Drawing.Color
System . Drawing . Color drawingColor = System . Drawing . Color . Red ;
IronSoftware . Drawing . Color ironColor = drawingColor ;
ironColor . A ;
ironColor . R ;
ironColor . G ;
ironColor . B ;
// Luminance is a value from 0 (black) to 100 (white) where 50 is the perceptual "middle grey"
ironColor . GetLuminance ( ) ;
// Gets the 32-bit ARGB value of this Color structure.
ironColor . ToArgb ( ) ;Rectangle using IronSoftware . Drawing ;
// Create a new Rectangle object
Rectangle rectangle = new Rectangle ( 5 , 5 , 50 , 50 ) ;
// Create a new Rectangle object with MeasurementUnits
Rectangle mmRectangle = new Rectangle ( 5 , 5 , 50 , 50 , MeasurementUnits . Millimeters ) ;
// Convert between MeasurementUnits
Rectangle pxRectangle = mmRectangle . ConvertTo ( MeasurementUnits . Millimeters ) ;
// Or specify DPI
Rectangle pxRectangleWithDPI = mmRectangle . ConvertTo ( MeasurementUnits . Millimeters , 200 ) ;
// Casting between System.Drawing.Rectangle and IronSoftware.Drawing.Rectangle
System . Drawing . Rectangle rectangle = new System . Drawing . Rectangle ( 10 , 10 , 150 , 150 ) ;
IronSoftware . Drawing . Rectangle ironRectangle = rectangle ;
ironRectangle . X ;
ironRectangle . Y ;
ironRectangle . Width ;
ironRectangle . Height ;Size using IronSoftware . Drawing ;
// Create a new Size object
Size size = new Size ( 50 , 50 ) ;
// Casting between System.Drawing.Size and IronSoftware.Drawing.Size
System . Drawing . Size systemSize = new System . Drawing . Size ( 150 , 150 ) ;
IronSoftware . Drawing . Size ironSize = systemSize ;
ironSize . Width ;
ironSize . Height ;Font using IronSoftware . Drawing ;
// Create a new Font object
Font font = new Font ( "Times New Roman" , FontStyle . Italic | FontStyle . Bold , 30 ) ;
// Casting between System.Drawing.Font and IronSoftware.Drawing.Font
System . Drawing . Font drawingFont = new System . Drawing . Font ( "Courier New" , 30 ) ;
IronSoftware . Drawing . Font ironFont = drawingFont ;
ironFont . FamilyName ;
ironFont . Style ;
ironFont . Size ;
ironFont . Italic ;
ironFont . Bold ; Pour plus d'informations sur Iron Software, veuillez visiter notre site Web: https://ironsoftware.com/
Pour une assistance générale et des demandes techniques, veuillez nous envoyer un courriel à: [email protected]