* Avoid encoding ASCII in more cases
* Make Space a const
* Use WriteWhiteSpace extension to eliminate possible virtual call
* Use ASCII when encoding constrained character subset
* Simplify pragmas
* Revert Whitespace rename
* Fix using statement order
* Remove obsolete serialization support on .NET
* Remove obsolete serialization support on .NET (part 2)
* Make AdobeFontMetricsLigature a struct
* Make AdobeFontMetricsCharacterSize a struct
* Eliminate allocation in CompactFontFormatData
* Pass TransformationMatrix by reference
* Seal Encoding classes
* Make SubTableHeaderEntry a readonly struct
* Introduce StringSplitter and eliminate various allocations in GlyphListFactory
* Eliminate a few substring allocations
* Use char overload on StringBuilder
* Eliminate virtual calls on stringIndex
* Optimize ReadHelper ReadLong and ReadInt methods
* Add additional readonly annotations to PdfRectangle
* Optimize NameTokenizer
* Eliminate allocation in TrueTypeGlyphTableSubsetter
* Use empty arrays
* Eliminate allocations in OperationWriteHelper.WriteHex
* Use simplified DecryptCbc method on .NET 6+
* Fix windows-1252 encoding not working on net6.0 and 8.0
* Update int buffers to exact unsigned max length and eliminate additional byte allocation
* Fix typo
* Remove unused constant
filter provider becomes single instance and no longer has constructor parameters.
tokenizers use list and stringbuilder pools to reduce allocations.
system font finder becomes static to preserve file cache across all documents.