Vergelijkingen en Formules Velden

Vergelijkingen en Formules Velden

Vergelijkingen en Formules Velden

Deze gids laat zien hoe je werkt met de FieldAdvance and FieldSymbol veldklassen in Aspose.Words FOSS voor .NET, die de Word’s ADVANCE and SYMBOL velden. Beide klassen zijn afgeleid van Field en implementeren IFieldCodeTokenInfoProvider; voor de basis Field objectmodel zelf, zie de Werken met Velden gids.


Tekst herpositioneren met FieldAdvance

FieldAdvance implementeert het ADVANCE veld, dat de tekst die erop volgt verschuift zonder zichtbare tekens in te voegen. DownOffset, UpOffset, LeftOffset en RightOffset (allemaal string) verplaatsen de volgende tekst met een aantal punten in die richting. HorizontalPosition en VerticalPosition (ook string) verplaatsen de volgende tekst naar een absolute positie gemeten vanaf de linkerrand van de kolom, het kader of het tekstvak, en de bovenzijde van de pagina, respectievelijk.


Speciale tekens invoegen met FieldSymbol

FieldSymbol implementeert het SYMBOL veld, dat een enkel teken invoegt op basis van een codepunt. CharacterCode (string) levert het codepunt van het teken in decimaal of hexadecimaal. IsAnsi, IsUnicode en IsShiftJis (allemaal bool) bepalen hoe CharacterCode wordt geïnterpreteerd. FontName en FontSize (string) stellen het lettertype in dat wordt gebruikt om het opgehaalde teken weer te geven, en DontAffectsLineSpacing (bool) bepaalt of het ingevoegde teken de regelafstand van de alinea beïnvloedt.


Tips en best practices

  • Stelt slechts één van IsAnsi, IsUnicode of IsShiftJis in op een FieldSymbol om een dubbelzinnige interpretatie van CharacterCode te voorkomen.
  • De offset-eigenschappen van FieldAdvance zijn string, geen numerieke types — geef puntwaarden als strings door bij het instellen van DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition of VerticalPosition.
  • Stel FieldSymbol.FontName in op een lettertype dat daadwerkelijk het glyf op CharacterCode bevat, anders kan het gerenderde teken terugvallen op een ontbrekende-glyf placeholder.
  • Roep Update() aan na het wijzigen van een eigenschap op FieldAdvance of FieldSymbol zodat de Result / DisplayResult van het veld de wijziging weerspiegelt.
  • Gebruik DontAffectsLineSpacing bij het invoegen van een hoog of ongewoon symboolteken dat de hoogte van de omringende regel niet mag vergroten.

Veelvoorkomende problemen

ProbleemOorzaakOplossing
ADVANCE veld verplaatst tekst niet zoals verwachtDe verkeerde offset-eigenschap was ingesteld, of een waarde bleef op de standaard staanStel de specifieke DownOffset / UpOffset / LeftOffset / RightOffset (relatief) of HorizontalPosition / VerticalPosition (absoluut) eigenschap in die overeenkomt met de beoogde verplaatsing
SYMBOL veld toont het verkeerde tekenCharacterCode werd geïnterpreteerd onder de verkeerde coderingStel precies één van IsAnsi, IsUnicode of IsShiftJis in zodat deze overeenkomt met hoe CharacterCode is geschreven
Symboolkarakter wordt weergegeven als een ontbrekende-glyf-vakFontName bevat geen glyf voor CharacterCodeStel FontName in op een lettertype waarvan bekend is dat het dat teken bevat.

FAQ

Wat doet het ADVANCE-veld?

Het verplaatst de tekst die erop volgt, ofwel met een relatieve offset (DownOffset, UpOffset, LeftOffset, RightOffset) of een absolute positie (HorizontalPosition, VerticalPosition), zonder zichtbare tekens in te voegen.

Hoe kan ik een specifiek Unicode-teken invoegen met FieldSymbol?

Stel CharacterCode in op het codepunt van het teken, stel IsUnicode = true in, en stel eventueel FontName / FontSize in voor de weergave van het glyph.

Zijn de offset-waarden van FieldAdvance getallen of strings?

Het zijn string-eigenschappen (DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition, VerticalPosition), die overeenkomen met het ruwe veld-code-argumentformaat.

Heeft het invoegen van een SYMBOL-teken invloed op de regelafstand?

Stel DontAffectsLineSpacing in op true om te voorkomen dat het ingevoegde teken de regelhoogte van de alinea beïnvloedt.


API Reference Samenvatting

Klasse/MethodeBeschrijving
FieldAdvanceImplementeert het ADVANCE-veld; verplaatst de volgende tekst zonder tekens in te voegen
FieldAdvance.DownOffset / UpOffset / LeftOffset / RightOffsetRelatieve puntverschuivingen toegepast op de volgende tekst
FieldAdvance.HorizontalPosition / VerticalPositionAbsolute puntpositie toegepast op de volgende tekst
FieldSymbolImplementeert het SYMBOL-veld; voegt een teken in via codepunt
FieldSymbol.CharacterCodeHet codepunt van het teken, in decimaal of hexadecimaal
FieldSymbol.IsAnsi / IsUnicode / IsShiftJisSelecteert hoe CharacterCode wordt geïnterpreteerd
FieldSymbol.FontName / FontSizeLettertype dat wordt gebruikt om het opgehaalde teken weer te geven
FieldSymbol.DontAffectsLineSpacingBepaalt of het ingevoegde teken de regelafstand van de alinea beïnvloedt

Zie ook

 Nederlands