From 5ecdc49fcb6fdb5fe24bf43bec96f3e5af62add6 Mon Sep 17 00:00:00 2001 From: Michael B Date: Mon, 5 Sep 2022 16:43:36 +0700 Subject: [PATCH 1/6] Update README.md --- README.md | 88 +++++++++++++++++++++++++++---------------------------- 1 file changed, 43 insertions(+), 45 deletions(-) diff --git a/README.md b/README.md index 339d8f3..aa32a45 100644 --- a/README.md +++ b/README.md @@ -1,46 +1,45 @@ -![Nuget](https://img.shields.io/nuget/v/IronDrawing?color=informational&label=latest) ![Installs](https://img.shields.io/nuget/dt/IronDrawing?color=informational&label=installs&logo=nuget) ![Passed](https://img.shields.io/badge/build-%20%E2%9C%93%20258%20tests%20passed%20(0%20failed)%20-107C10?logo=visualstudio) ![windows](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=windows) ![macOS](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=apple) ![linux](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=linux&logoColor=white) ![docker](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=docker&logoColor=white) ![aws](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=amazonaws) ![microsoftazure](https://img.shields.io/badge/%E2%80%8E%20-%20%E2%9C%93-107C10?logo=microsoftazure) +![Nuget](https://img.shields.io/nuget/v/IronSoftware.System.Drawing?color=informational&label=latest) ![Installs](https://img.shields.io/nuget/dt/IronSoftware.System.Drawing?color=informational&label=installs&logo=nuget) +# IronSoftware.Drawing - Image, Color, Rectangle, and Font class for .NET Applications ​ -# IronDrawing - Image, Color, Rectangle, and Font class for .NET Applications +**IronSoftware.Drawing** is an open-source library originally developed by Iron Software that helps C# Software Engineers to replace System.Drawing.Common in .NET projects. ​ -IronDrawing is a library developed and maintained by Iron Software that helps C# Software Engineers to replace System.Drawing.Common in .NET projects. -​ -### IronDrawing Features and Capabilities: -- AnyBitmap: A universally compatible Bitmap class. Implicit casting between `IronDrawing.AnyBitmap` and the following: +### IronSoftware.Drawing Features and Capabilities: +- **AnyBitmap**: A universally compatible Bitmap class. Implicit casting between `IronSoftware.Drawing.AnyBitmap` and the following supported: - `System.Drawing.Bitmap` - `System.Drawing.Image` - `SkiaSharp.SKBitmap` - `SkiaSharp.SKImage` - `SixLabors.ImageSharp` - `Microsoft.Maui.Graphics.Platform.PlatformImage` -- Color: A universally compatible Color class. Implicit casting between `IronDrawing.Color` and the following: +- **Color**: A universally compatible Color class. Implicit casting between `IronSoftware.Drawing.Color` and the following supported: - `System.Drawing.Color` - `SkiaSharp.SKColor` - `SixLabors.ImageSharp.Color` - `SixLabors.ImageSharp.PixelFormats` -- CropRectangle: A universally compatible Rectangle class. Implicit casting between `IronDrawing.CropRectangle` and the following: +- **CropRectangle**: A universally compatible Rectangle class. Implicit casting between `IronSoftware.Drawing.CropRectangle` and the following supported: - `System.Drawing.Rectangle` - `SkiaSharp.SKRect` - `SkiaSharp.SKRectI` - `SixLabors.ImageSharp.Rectangle` -- Font: A universally compatible Font class. Implicit casting between `IronDrawing.Font` and the following: +- **Font**: A universally compatible Font class. Implicit casting between `IronSoftware.Drawing.Font` and the following supported: - `System.Drawing.Font` - `SkiaSharp.SKFont` - `SixLabors.Fonts.Font` ​ -### IronDrawing has cross platform support compatibility with: +### IronSoftware.Drawing has cross platform support compatibility with: - .NET 7, .NET 6, .NET 5, .NET Core, Standard, and Framework - Windows, macOS, Linux, Docker, Azure, and AWS ​ -## Using IronDrawing +## Using IronSoftware.Drawing ​ -Installing the IronDrawing NuGet package is quick and easy, please install the package like this: +Installing the IronSoftware.Drawing NuGet package is quick and easy, please install the package like this: ``` -PM> Install-Package IronDrawing +PM> Install-Package IronSoftware.System.Drawing ``` -Once installed, you can get started by adding `using IronDrawing` to the top of your C# code. +Once installed, you can get started by adding `using IronSoftware.Drawing;` to the top of your C# code. ### `AnyBitmap` Code Example ```csharp -using IronDrawing; +using IronSoftware.Drawing; ​ // Create a new AnyBitmap object var bitmap = AnyBitmap.FromFile("FILE_PATH"); @@ -51,69 +50,68 @@ var bytes = bitmap.ExportBytes(); var resultExport = new System.IO.MemoryStream(); bimtap.ExportStream(resultExport, AnyBitmap.ImageFormat.Jpeg, 100); ​ -// Casting between System.Drawing.Bitmap to IronDrawing.AnyBitmap +// Casting between System.Drawing.Bitmap and IronSoftware.Drawing.AnyBitmap System.Drawing.Bitmap image = new System.Drawing.Bitmap("FILE_PATH"); -var anyBitmap = image; +IronSoftware.Drawing.AnyBitmap anyBitmap = image; anyBitmap.SaveAs("result-from-casting.png"); ``` ### `Color` Code Example ```csharp -using IronDrawing; +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 to IronDrawing.Color +// Casting between System.Drawing.Color and IronSoftware.Drawing.Color System.Drawing.Color drawingColor = System.Drawing.Color.Red; -IronDrawing.Color ironDrawingColor = drawingColor; +IronSoftware.Drawing.Color ironColor = drawingColor; ​ -ironDrawingColor.A; -ironDrawingColor.R; -ironDrawingColor.G; -ironDrawingColor.B; +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" -ironDrawingColor.GetLuminance(); +IronDrawingColor.GetLuminance(); ``` ### `CropRectangle` Code Example ```csharp -using IronDrawing; +using IronSoftware.Drawing; ​ // Create a new CropRectangle object CropRectangle cropRectangle = new CropRectangle(5, 5, 50, 50); ​ -// Casting between System.Drawing.Rectangle to IronDrawing.CropRectangle +// Casting between System.Drawing.Rectangle and IronSoftware.Drawing.CropRectangle System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle(10, 10, 150, 150); -CropRectangle ironDrawingCropRectangle = rectangle; +IronSoftware.Drawing.CropRectangle ironRectangle = rectangle; ​ -ironDrawingCropRectangle.Width; -ironDrawingCropRectangle.Height; -ironDrawingCropRectangle.X; -ironDrawingCropRectangle.Y; +ironRectangle.X; +ironRectangle.Y; +ironRectangle.Width; +ironRectangle.Height; ``` ### `Font` Code Example ```csharp -using IronDrawing; +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 to IronDrawing.Font +// Casting between System.Drawing.Font and IronSoftware.Drawing.Font System.Drawing.Font drawingFont = new System.Drawing.Font("Courier New", 30); -IronDrawing.Font ironDrawingFont = drawingFont; +IronSoftware.Drawing.Font ironFont = drawingFont; ​ -ironDrawingFont.FamilyName; -ironDrawingFont.Style; -ironDrawingFont.Size; -ironDrawingFont.Italic; -ironDrawingFont.Bold; +ironFont.FamilyName; +ironFont.Style; +ironFont.Size; +ironFont.Italic; +ironFont.Bold; ``` ​ ## Support Available -​ -For more information on Iron Software please visit: [https://ironsoftware.com/](https://ironsoftware.com/) -​ -​ -For general support and technical inquiries, please email us at: developers@ironsoftware.com \ No newline at end of file + +For more information about Iron Software please visit our website: [https://ironsoftware.com/](https://ironsoftware.com/) + +For general support and technical inquiries, please email us at: developers@ironsoftware.com From 04844006cefb083e386e1a96fdebfbb9238f6c3d Mon Sep 17 00:00:00 2001 From: Michael <97211369+michael-ironsoftware@users.noreply.github.com> Date: Mon, 5 Sep 2022 16:53:26 +0700 Subject: [PATCH 2/6] Add Table of Contents README.md --- README.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aa32a45..a31fcc2 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,18 @@ ​ **IronSoftware.Drawing** is an open-source library originally developed by Iron Software that helps C# Software Engineers to replace System.Drawing.Common in .NET projects. ​ -### IronSoftware.Drawing Features and Capabilities: +## Table of Contents + +- [Features](#ironsoftwaredrawing-features) + - [Compatibility](#ironsoftwaredrawing-has-cross-platform-support-compatibility-with) +- [Using IronSoftware.Drawing](#using-ironsoftwaredrawing) + - [AnyBitmap Code Example](#anybitmap-code-example) + - [Color Code Example](#color-code-example) + - [CropRectangle Code Example](#croprectangle-code-example) + - [Font Code Example](#font-code-example) +- [Support](#support-available) + +## IronSoftware.Drawing Features: - **AnyBitmap**: A universally compatible Bitmap class. Implicit casting between `IronSoftware.Drawing.AnyBitmap` and the following supported: - `System.Drawing.Bitmap` - `System.Drawing.Image` From ff72912dc6f77ce93d60d0c0f813f4eb33c0706a Mon Sep 17 00:00:00 2001 From: Michael <97211369+michael-ironsoftware@users.noreply.github.com> Date: Mon, 5 Sep 2022 16:57:00 +0700 Subject: [PATCH 3/6] Update IronSoftware.Drawing.nuspec Changed IronDrawing to IronSoftware.Drawing. Did not modify reference in `` --- NuGet/IronSoftware.Drawing.nuspec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/NuGet/IronSoftware.Drawing.nuspec b/NuGet/IronSoftware.Drawing.nuspec index 0bd8378..ba0f9a8 100644 --- a/NuGet/IronSoftware.Drawing.nuspec +++ b/NuGet/IronSoftware.Drawing.nuspec @@ -18,12 +18,12 @@ Works seamlessly with popular Image and Bitmap formats such as System.Drawing.Bi Implicit casting means that using this class to input and output Bitmap and image types from public API's gives full compatibility to all image type fully supported by Microsoft. Key library features include: - * AnyBitmap: A universally compatible Bitmap class. Implicit casting between System.Drawing.Bitmap, System.Drawing.Image, SkiaSharp.SKBitmap, SkiaSharp.SKImage, SixLabors.ImageSharp, Microsoft.Maui.Graphics.Platform.PlatformImage to IronDrawing.AnyBitmap - * Color: A universally compatible Color class. Implicit casting between System.Drawing.Color, SkiaSharp.SKColor, SixLabors.ImageSharp.Color, SixLabors.ImageSharp.PixelFormats to IronDrawing.Color - * CropRectangle: A universally compatible Rectangle class. Implicit casting between System.Drawing.Rectangle, SkiaSharp.SKRect, SkiaSharp.SKRectI, SixLabors.ImageSharp.Rectangle to IronDrawing.CropRectangle - * Font: A universally compatible Font class. Implicit casting between System.Drawing.Font, SkiaSharp.SKFont, SixLabors.Fonts.Font to IronDrawing.Font + * AnyBitmap: A universally compatible Bitmap class. Implicit casting between System.Drawing.Bitmap, System.Drawing.Image, SkiaSharp.SKBitmap, SkiaSharp.SKImage, SixLabors.ImageSharp, Microsoft.Maui.Graphics.Platform.PlatformImage to IronSoftware.Drawing.AnyBitmap + * Color: A universally compatible Color class. Implicit casting between System.Drawing.Color, SkiaSharp.SKColor, SixLabors.ImageSharp.Color, SixLabors.ImageSharp.PixelFormats to IronSoftware.Drawing.Color + * CropRectangle: A universally compatible Rectangle class. Implicit casting between System.Drawing.Rectangle, SkiaSharp.SKRect, SkiaSharp.SKRectI, SixLabors.ImageSharp.Rectangle to IronSoftware.Drawing.CropRectangle + * Font: A universally compatible Font class. Implicit casting between System.Drawing.Font, SkiaSharp.SKFont, SixLabors.Fonts.Font to IronSoftware.Drawing.Font -IronDrawing can be used within C#, VB.NET, F#, ASP.NET projects, MVC, Web Services, Console & Desktop Applications. +IronSoftware.Drawing can be used within C#, VB.NET, F#, ASP.NET projects, MVC, Web Services, Console & Desktop Applications. Supports: * .NET Framework 4.6.2 + From 17c034370adc8fae1648e951eee973568bf22d5a Mon Sep 17 00:00:00 2001 From: Michael <97211369+michael-ironsoftware@users.noreply.github.com> Date: Mon, 5 Sep 2022 17:00:55 +0700 Subject: [PATCH 4/6] Update README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index a31fcc2..2f4f4fa 100644 --- a/README.md +++ b/README.md @@ -8,10 +8,10 @@ - [Features](#ironsoftwaredrawing-features) - [Compatibility](#ironsoftwaredrawing-has-cross-platform-support-compatibility-with) - [Using IronSoftware.Drawing](#using-ironsoftwaredrawing) - - [AnyBitmap Code Example](#anybitmap-code-example) - - [Color Code Example](#color-code-example) - - [CropRectangle Code Example](#croprectangle-code-example) - - [Font Code Example](#font-code-example) + - [AnyBitmap Example](#anybitmap-code-example) + - [Color Example](#color-code-example) + - [CropRectangle Example](#croprectangle-code-example) + - [Font Example](#font-code-example) - [Support](#support-available) ## IronSoftware.Drawing Features: From 5c1e1880a5812198d0e4db59d63f4d3c57ee4f65 Mon Sep 17 00:00:00 2001 From: Meee Date: Tue, 6 Sep 2022 09:36:33 +0700 Subject: [PATCH 5/6] Change nuget summary --- NuGet/IronSoftware.Drawing.nuspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NuGet/IronSoftware.Drawing.nuspec b/NuGet/IronSoftware.Drawing.nuspec index ba0f9a8..91e2fec 100644 --- a/NuGet/IronSoftware.Drawing.nuspec +++ b/NuGet/IronSoftware.Drawing.nuspec @@ -33,7 +33,7 @@ Supports: * .NET 7 For general support and technical inquiries, please email us at: developers@ironsoftware.com - IronDrawing + IronSoftware.System.Drawing helps C# Software Engineers to replace System.Drawing.Common in .NET projects. * Added support for implicit casting for existing Color, CropRectangle, and Font with those of Microsoft.Maui * Added support for implicit casting between Rgb48, Rgba64, and IronDrawing.Color Copyright © Iron Software 2022 From 3676417b01e89044a42fc4cd85b85dbadea6483b Mon Sep 17 00:00:00 2001 From: Michael <97211369+michael-ironsoftware@users.noreply.github.com> Date: Tue, 6 Sep 2022 10:13:17 +0700 Subject: [PATCH 6/6] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2f4f4fa..e24f99d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![Nuget](https://img.shields.io/nuget/v/IronSoftware.System.Drawing?color=informational&label=latest) ![Installs](https://img.shields.io/nuget/dt/IronSoftware.System.Drawing?color=informational&label=installs&logo=nuget) +[![NuGet](https://img.shields.io/nuget/v/IronSoftware.System.Drawing?color=informational&label=latest&logo=nuget)](https://www.nuget.org/packages/IronSoftware.System.Drawing/) [![Installs](https://img.shields.io/nuget/dt/IronSoftware.System.Drawing?color=informational&label=installs&logo=nuget)](https://www.nuget.org/packages/IronSoftware.System.Drawing/) [![GitHub Latest Commit](https://img.shields.io/github/last-commit/iron-software/IronSoftware.Drawing.Common?color=informational&logo=github)](https://github.com/iron-software/IronSoftware.Drawing.Common) [![GitHub Contributors](https://img.shields.io/github/contributors/iron-software/IronSoftware.Drawing.Common?color=informational&logo=github)](https://github.com/iron-software/IronSoftware.Drawing.Common) # IronSoftware.Drawing - Image, Color, Rectangle, and Font class for .NET Applications ​ **IronSoftware.Drawing** is an open-source library originally developed by Iron Software that helps C# Software Engineers to replace System.Drawing.Common in .NET projects.