Native rich-text run spacing

Rich-appearances passen authored letter- en woordspacing toe tijdens shaping, regelfitting, fysieke-regel-reshaping, uitlijning en schilderen, met de meegeleverde fonts en de bestaande begrensde rich-text-layout

<p style="letter-spacing:.12em;word-spacing:-1.25pt">A spaced paragraph</p>

Het begrensde inline CSS-profiel accepteert normal, inherit, initial, unset, getekende pt, px op 96 dpi, pc, in, cm, mm en em-lengtes, plus unitloze nul; em rekent vanuit de finale gecascadeerde fontgrootte van diens declarerende element, en kinderen erven die berekende puntenlengte

Letter- en woordspacing hebben onafhankelijke declaratievolgorde en important-prioriteit, en font shorthand behoudt beide componenten; niet-ondersteunde of ongeldige declaraties volgen het bestaande negeergedrag van de decoder

Expliciete normal reset de bijbehorende globale appearance-spacing naar nul; weggelaten native modi behouden het bestaande globale CharacterSpacing- en WordSpacing-gedrag, inclusief diens trailing character advance

Wanneer expliciete letter spacing een paragraaf activeert, ontvangen zichtbare typographic units de helft van de naburige stijlwaarden op elke interieurgrens na visuele herordening, en fysieke regelranden laten de buitenhelften weg; marks en onzichtbare format-controls verbruiken geen aparte spacing

SPACE en NBSP ontvangen de helft van diens woordspacing aan elke kant van diens geshaped cluster, inclusief een separator gevolgd door een combining mark; andere Unicode-woordseparatoren vallen buiten dit begrensde profiel

Niet-nul expliciete tracking schakelt optionele liga-, clig-, dlig- en hlig-substituties uit terwijl vereiste ligatures en kerning behouden blijven; aangrenzende Arabische, Rohingya-, Mandaic-, Mongoolse, N'Ko-, Phags-pa- en Syrische cursieve units onderdrukken tracking waar deze implementatie de verbinding niet veilig kan verlengen

Negatieve spacing doet mee aan echte glyph-inkt-bounds en prefix-fitting zonder aan te nemen dat elke langere prefix breder is; auto-fit schaalt absolute punten-spacing samen met de fontgrootte terwijl authored em-factoren relatief blijven

Getypeerde runs behouden diens originele Double-waarden, V houdt authored platte tekst vast en RV schrijft berekende punten-spacing met round-trip-precisie; native read-only-updates vergelijken de resulterende rich-waarde- en appearance-semantics

Spacing decimale conversie gebruikt round-to-nearest, ties-to-even voor eindige Double-waarden; canonieke RV-waarden normaliseren negatieve nul naar nul en blijven ongewijzigd door een tweede decode en serialisatie

Binnen dit begrensde profiel rekenen expliciete normal en expliciete nul naar dezelfde punten-spacing en canonieke RV, waardoor echt equivalente read-only-updates semantische no-ops zijn; versioned JSON-operaties behouden de originele bronbytes, en de weggelaten legacy-modus blijft distinct omdat hij de globale appearance-options erft

Sinds versie 2.943.1 publiceert native SaveRichTextFieldUpdatesToFile ook de exacte originele bytes wanneer alle updates ongewijzigd zijn en de geladen graaf geen pending edits heeft, inclusief bestaande AES-encryptie en signed revisies; pending graaf-edits worden behouden in de gepubliceerde candidate zelfs wanneer het veldupdate-aantal nul is

Herbouw Pascal- en C++Builder-consumers met matchende rich-run- en shaped-glyph-records en gegenereerde headers; de versioned C callback-structuren en geƫxporteerde symbolen zijn ongewijzigd

Dit profiel volgt het spacing-model uit CSS 2.2 en de line-edge-, typographic-unit- en shaping-regels uit CSS Text letter spacing en CSS Text word spacing, met de hierboven vermelde begrensde separator- en cursieve dekking

Spacing modes · Typed JSON · Styled shaping span