forked from SixLabors/ImageSharp
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Png interlaced (Adam7) encoding #1
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
735bc90
to
2493f9e
Compare
IldarKhayrutdinov
pushed a commit
that referenced
this pull request
Sep 19, 2018
IldarKhayrutdinov
pushed a commit
that referenced
this pull request
Sep 19, 2018
Sync with imagesharp master
Update from SixLabors/ImageSharp
2493f9e
to
b9f4112
Compare
47afe84
to
5c4aa18
Compare
SixLabors#946: AoT compiler fixes and cleaned up AoTCompilerTools
* Added base BokehBlurProcessor class, and kernel parameters * Added method to calculate the kernel parameters * Switched to float, added method to create the 1D kernels * Added complex kernels normalization * Added BokehBlurExtensions class * Added the Complex64 struct type * Switched to Complex64 in the BokehBlurProcessor * Added caching system for the bokeh processor parameters * Added WeightedSum method to the Complex64 type * Added IEquatable<T> interface to the Complex64 type * New complex types added * Added method to reshape a DenseMatrix<T> with no copies * Added bokeh convolution first pass (WIP) * Added second bokeh convolution pass (WIP) * Added image sum pass to the bokeh processor (WIP) * Minor bug fixes (WIP) * Switched to Vector4 processing in the bokeh computation * Minor tweaks * Added Unit test for the bokeh kernel components * Minor performance improvements * Minor code refactoring, added gamma parameter (WIP) * Removed unused temp buffers in the bokeh processing * Gamma highlight processing implemented * Speed optimizations, fixed partials computations in target rectangle * Increased epsilon value in the unit tests * Fixed for alpha transparency blur * Fixed a bug when only blurring a target rectangle * Added bokeh blur image tests (WIP) * Added IXunitSerializable interface to the test info class * culture independent parsing in BokehBlurTest.cs * Performance optimizations in the bokeh processor * Reduced number of memory allocations, fixed bug with multiple components * Initialization and other speed improvements * More initialization speed improvements * Replaced LINQ with manual loop * Added BokehBlur overload to just specify the target bounds * Speed optimizations to the bokeh 1D convolutions * More speed optimizations to the bokeh processor * Fixed code style and Complex64.ToString method * Fixed processing buffer initialization * Minor performance improvements * FIxed issue when applying bokeh blur to specific bounds * Minor speed optimizaations * Minor code refactoring * Fixed convolution upper bound in second 1D pass * improve BokehBlurTest coverage * use Gray8 instead of Alpha8 * Adjusted guard position in bokeh processor constructor * Added BokehBlurParameters struct * Added BokehBlurKernelData struct * Minor code refactoring * Fixed API change build errors * Bug fixes with the pixel premultiplication steps * Removed unwanted unpremultiplication pass * Removed unused using directives * Fixed missing using directives in conditional branches * Update from latest upstream master * Update Block8x8F.Generated.cs * Update GenericBlock8x8.Generated.cs * Manual checking for files with LF (see gitter) * Removed unused using directive * Added IEquatable<ComplexVector4> interface * Added IEquatable<BokehBlurParameters> interface * Moved bokeh blur parameters types * Added reference to original source code * Complex convolution methods moved to another class * Switched to MathF in the bokeh blur processor * Switched to Vector4.Clamp * Added Buffer2D<T>.Slice API * Added BokehBlurExecutionMode enum * Added new bokeh blur processor constructors * Added new bokeh blur extension overloads with execution mode * Code refactoring in preparation for the execution mode switch * Implemented execution mode switch in the bokeh processor * Moved BokehBlurExecutionMode struct * Removed unused using directives * Minor code refactoring * More minor code refactoring * Update External * Fix undisposed buffers * Bokeh blur processor cache switched to concurrent dictionary * Minor code refactoring
) * Add support for writing tEXt chunks * Add support for reading zTXt chunks * Add check, if keyword is valid * Add support for reading iTXt chunks * Add support for writing iTXt chunks * Remove Test Decode_TextEncodingSetToUnicode_TextIsReadWithCorrectEncoding: Assertion is wrong, the correct keyword name is "Software" * Add support for writing zTXt chunk * Add an encoder Option to enable compression when the string is larger than a given threshold * Moved uncompressing text into separate method * Remove textEncoding option from png decoder options: the encoding is determined by the specification: https://www.w3.org/TR/PNG/#11zTXt * Removed invalid compressed zTXt chunk from test image * Revert accidentally committed changes to Sandbox Program.cs * Review adjustments * Using 1024 bytes as a limit when to compress text as recommended by the spec * Fix inconsistent line endings * Trim leading and trailing whitespace on png keywords * Move some metadata related tests into GifMetaDataTests.cs * Add test case for gif with large text * Gif text metadata is now a list of strings * Encoder writes each comment as a separate block * Adjustment of the Tests to the recent changes * Move comments to GifMetadata * Move Png TextData to format PngMetaData
IldarKhayrutdinov
pushed a commit
that referenced
this pull request
Dec 18, 2021
Merge upstream changes
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prerequisites
Description