Andreas L Delmelle wrote:
The CommonBorderPaddingBackground is still a memory eater, but I'll have to take a look at LengthRangeProperty and CondLengthProperty first for that.
The trick is probably to split it BPBs in a set of "specified data" which can be cached and the "resolved data". Another idea I pursued (without success) in 0.20: some properties can only have a very limited set of values, in particular text-decoration, keeps, and a few others, which can probably implemented as singletons instead of using a cache. For properties like hyphenation-ladder-count which are likely to have only a few values from a potentially unlimited domain, a mix of pre-fabricated singletons for the most likely used values and a list in case another value is specified, without pruning during rendering, might provide the best balance between memory efficacy and performance. J.Pietschmann