DataJuggler.PixelDatabase 1.2.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package DataJuggler.PixelDatabase --version 1.2.0
NuGet\Install-Package DataJuggler.PixelDatabase -Version 1.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DataJuggler.PixelDatabase" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DataJuggler.PixelDatabase --version 1.2.0
#r "nuget: DataJuggler.PixelDatabase, 1.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DataJuggler.PixelDatabase as a Cake Addin
#addin nuget:?package=DataJuggler.PixelDatabase&version=1.2.0

// Install DataJuggler.PixelDatabase as a Cake Tool
#tool nuget:?package=DataJuggler.PixelDatabase&version=1.2.0

I just published a new website that you can test all the functionality of this Nuget package:

https://pixeldatabase.net A free online text based image editor.

Please visit my YouTube channel and subscribe if you haven't already, as I make new videos often:

https://www.youtube.com/channel/UCaw0joqvisKr3lYJ9Pd2vHA

I make announcements on Twitter when new versions are released, follow me: Data_Juggler

And I have over two dozen projects on GitHub: github.com/DataJuggler

Thanks,

Data Juggler

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.2.7 94 2/28/2024
8.2.6 87 2/27/2024
8.2.5 88 2/26/2024
8.2.4 70 2/26/2024
8.2.3 74 2/26/2024
8.2.2 67 2/26/2024
8.2.1 74 2/24/2024
8.2.0 77 2/24/2024
8.1.3 90 2/17/2024
8.1.2 83 2/16/2024
8.1.1 205 12/9/2023
8.1.0 100 12/7/2023
8.0.1 106 11/22/2023
8.0.0 91 11/19/2023
7.0.9 182 7/12/2023
7.0.8 184 4/24/2023
7.0.7 183 4/23/2023
7.0.6 320 1/10/2023
7.0.5 386 11/30/2022
7.0.4 342 11/9/2022
7.0.4-rc1 108 10/28/2022
7.0.3-rc1 110 10/25/2022
7.0.2-rc1 117 10/21/2022
7.0.1-rc1 128 10/21/2022
7.0.0-rc1 160 10/20/2022
6.2.1 481 7/12/2022
6.2.0 428 7/12/2022
6.1.5 470 1/23/2022
6.1.4 266 1/4/2022
6.1.3 265 12/31/2021
6.1.2 277 12/11/2021
6.1.1 472 12/11/2021
6.1.0 262 12/11/2021
6.0.7 281 11/17/2021
6.0.6 366 11/13/2021
6.0.5 303 11/13/2021
6.0.4 337 11/13/2021
6.0.3 302 11/13/2021
6.0.2 301 11/13/2021
6.0.1 299 11/11/2021
6.0.0 314 11/11/2021
5.1.12 349 10/6/2021
5.1.11 362 10/6/2021
5.1.10 319 8/24/2021
5.1.9 320 8/24/2021
5.1.8 323 8/24/2021
5.1.7 319 8/24/2021
5.1.6 392 8/22/2021
5.1.5 366 8/21/2021
5.1.4 371 8/18/2021
5.1.3 354 8/17/2021
5.1.2 335 8/15/2021
5.1.1 336 8/15/2021
5.1.0 333 8/11/2021
5.0.0 298 11/11/2021
1.6.1 317 8/11/2021
1.6.0 358 6/28/2021
1.5.0.3 378 4/24/2021
1.5.0.2 400 2/12/2021
1.5.0.1 380 2/12/2021
1.3.1 422 11/13/2020
1.3.0 398 11/13/2020
1.2.2 595 8/15/2020
1.2.0 604 7/11/2020
1.1.6 498 7/9/2020
1.1.5 478 7/8/2020
1.1.4 562 6/12/2020
1.1.3 462 6/12/2020
1.1.2 483 6/11/2020
1.1.1 459 6/11/2020
1.1.0 499 4/21/2020
1.0.7 465 4/15/2020
1.0.6 595 4/8/2020
1.0.5 523 3/11/2020
1.0.4 473 3/6/2020
1.0.3 521 3/1/2020
1.0.2 574 3/1/2020
1.0.1 570 3/1/2020
1.0.0 532 3/1/2020

1.2.0: I added a couple of new features and fixed some bugs with the callback delegates if they were null.
New methods:
CreateSubImage - The PixelDatabase must be loaded, pass in the TopLeft point and the rectange size.
SearchForSubImage - This method returns a SearchResult object with the TopLeft point.
class SearchResult - This class contains a Point and a Score. It has a confidence property, but I haven't coded it yet.
     
Here is a sample project you can use that takes a screen shot and you click the canvas (PictureBox)
containing the image to create sub images.
There is also a Search Mode that demonstrates searching for an image in another image.

https://github.com/DataJuggler/SubImageCreator

Code is new, so use at your own risk. I have a sample project on GitHub to test this that takes a screen
shot and you can click the picture of the screenshot to create sub images. All more of a test than anything
useful yet, but I might expand it over time.


1.1.6: Added a new method CreateSubImage. Tested and it works, but not tested very thoroughly

1.1.5: I added a new method ApplyPixel, which was added to the .Net Framework version so I can call this from a Paint.Net plug-in

1.1.4: I had to update DataJuggler.UltimateHelper.Core.IsNumeric method to support negative numbers.

1.1.3: I removed Absolute value from BlueRedDifference, BlueGreenDifference and GreenRedDifference.
After working with these values for a few weeks, I discovered there is a difference between blue - red and red - blue, sometimes.

1.1.2: I fixed a bug that has been bugging me for days. Now you apply a color:
Update
Set Color 98 125 86

I had forgot to set the property SetColor to true.

1.1.1: I have been working with PixelDatabase.Net website, so quite a few chagnes needed to be checked in.

1.1.0: I discovered in my initial testing that the old way was using 7 gigs of memory to hold a list of
millions of PixelInformation objects. Now I do the BQL comparisons without instantiating tons of objects and
the memory foot print went down to under 300 meg for a Blazor website with a 20 meg image loaded.

1.0.7: I am publishing the version that is going to be on my website https://pixeldatabase.net/.

This version includes many new properties on a PixelInformation object, such as:
1. Min
2. Max
3. Average
4. MinMaxDifference
5. RedMinDifference
6. RedMaxDifference
7. RedAverageDifference
8. GreenMinDifference
9. GreenMaxDifference
10. GreenAverageDifference
11. BlueMinDifference
12. BlueMaxDifference
13. BlueAverageDifference

These should all work for queries such as:

Hide Pixels Where
MinMaxDifference > 25

Or

Update
Set Swap Blue Red
Where
RedMinDifference < 10





1.0.6: I have been working on this project for several weeks, and I need to update Nuget.

1.0.5: I fixed a bug where Swap Colors was not taking the Alpha into account from the previous color.

1.0.4: I made some changes while working on the .Net Framework version, and I am trying to keep them in sync. The changes involved I added a new draw line in color feature, a new feature for LastUpdate can always be queried by:

Update
blah blah blah
Where
Pixels In LastUpdate

Also some changes to the Draw Line, which is still very slow, but now a message shows.
I need to create an abort for Draw Line, just haven't had a chance yet. I will work on this some more next week.

1.0.3: I added a new override to PixelDatabaseLoder for ImageUrl.

1.0.2: I had forgot to list the Project Url, as well as the description changed from untested, to lightly tested.

1.0.1: Changed TargetFramework netcoreapp3.1 to TargetFrameworks netstandard2.1;netcoreapp3.1

First release, i will update the rest of the info if it gets past proof of concept.