Egyenletek és képletek mezők
Egyenletek és képletek mezők
Ez az útmutató bemutatja, hogyan kell dolgozni a FieldAdvance and FieldSymbol mezőosztályok a Aspose.Words FOSS-ben a .NET számára, amelyek a Word ADVANCE and SYMBOL mezőket. Mindkét osztály a Field és megvalósítja IFieldCodeTokenInfoProvider; az alap Field objektummodellre vonatkozóan, lásd a Mezőkkel való munka útmutató.
Szöveg áthelyezése FieldAdvance használatával
FieldAdvance megvalósítja a ADVANCE mezőt, amely a mögötte lévő szöveget eltolja anélkül, hogy látható karaktereket helyezne be. DownOffset, UpOffset, LeftOffset és RightOffset (mind string) a következő szöveget a megadott irányban pontokban elmozdítják. HorizontalPosition és VerticalPosition (szintén string) a következő szöveget egy abszolút pozícióba helyezik, amely a hasáb, keret vagy szövegdoboz bal szélétől, illetve az oldal felső szélétől mérve.
Speciális karakterek beszúrása FieldSymbol használatával
FieldSymbol megvalósítja a SYMBOL mezőt, amely egyetlen karaktert szúr be kódpont alapján. CharacterCode (string) a karakter kódpontját adja meg decimális vagy hexadecimális formában. IsAnsi, IsUnicode és IsShiftJis (mind bool) kiválasztják, hogyan értelmeződik a CharacterCode. FontName és FontSize (string) beállítják a lekért karakter megjelenítéséhez használt betűtípust, a DontAffectsLineSpacing (bool) pedig szabályozza, hogy a beszúrt karakter befolyásolja-e a bekezdés sortávolságát.
Tippek és bevált gyakorlatok
- A
FieldSymbolesetén csak azIsAnsi,IsUnicodevagyIsShiftJisközül egyet állítsa be, hogy elkerülje aCharacterCodefélreértelmezését. - A
FieldAdvanceeltolási tulajdonságaistring, nem numerikus típusok — adjon át pontértékeket karakterláncként, amikor aDownOffset,UpOffset,LeftOffset,RightOffset,HorizontalPositionvagyVerticalPositionbeállítja. - Állítsa be a
FieldSymbol.FontNamebetűtípust úgy, hogy az valóban tartalmazza aCharacterCodehelyen lévő glyfét, különben a megjelenített karakter hiányzó-glyf helyőrzőre eshet vissza. - Hívja meg a
Update()függvényt aFieldAdvancevagyFieldSymbolvalamelyik tulajdonságának módosítása után, hogy a mezőResult/DisplayResulttükrözze a változást. - Használja a
DontAffectsLineSpacingelemet, ha magas vagy szokatlan szimbólum karaktert szúr be, amelynek nem szabad megnyújtania a környező sor magasságát.
Gyakori problémák
| Probléma | Ok | Javítás |
|---|---|---|
ADVANCE mező nem mozgatja a szöveget a várt módon | Helytelen offset tulajdonság lett beállítva, vagy egy érték alapértelmezetten maradt | Állítsa be a megfelelő DownOffset / UpOffset / LeftOffset / RightOffset (relatív) vagy HorizontalPosition / VerticalPosition (abszolút) tulajdonságot, amely megfelel a kívánt mozgásnak |
SYMBOL mező hibás karaktert jelenít meg | CharacterCode helytelen kódolásban lett értelmezve | Állíts be pontosan egyet a IsAnsi, IsUnicode vagy IsShiftJis közül, hogy megfeleljen annak, ahogyan a CharacterCode készült |
| A szimbólum karakter hiányzó-glyph dobozként jelenik meg | FontName nem tartalmaz glyphot a CharacterCode számára | Állítsa be a(z) FontName értékét egy olyan betűtípusra, amely ismert módon tartalmazza azt a karaktert. |
FAQ
Mit csinál az ADVANCE mező?
Átpozícionálja a mögötte lévő szöveget, akár relatív eltolással (DownOffset, UpOffset, LeftOffset, RightOffset), akár abszolút pozícióval (HorizontalPosition, VerticalPosition), látható karakterek beszúrása nélkül.
Hogyan szúrhatok be egy adott Unicode karaktert a FieldSymbol segítségével?
Állítsa be a CharacterCode értékét a karakter kódpontjára, állítsa be a IsUnicode = true értékét, és opcionálisan állítsa be a FontName / FontSize értékeket a glif megjelenítéséhez.
A FieldAdvance eltolási értékei számok vagy karakterláncok?
Ezek a string tulajdonságai (DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition, VerticalPosition), amelyek megfelelnek a nyers mezőkód argumentum formátumának.
A SZIMBÓLUM karakter beszúrása befolyásolja a sorközöket?
Állítsa a DontAffectsLineSpacing értékét true értékre, hogy megakadályozza a beszúrt karakter hatását a bekezdés sortávolságára.
API Reference összefoglaló
| Osztály/Módszer | Leírás |
|---|---|
FieldAdvance | Megvalósítja a ADVANCE mezőt; áthelyezi a következő szöveget karakterek beszúrása nélkül |
FieldAdvance.DownOffset / UpOffset / LeftOffset / RightOffset | Relatív ponteltolások alkalmazva a következő szövegre |
FieldAdvance.HorizontalPosition / VerticalPosition | Abszolút pontpozíció alkalmazva a következő szövegre |
FieldSymbol | Megvalósítja a SYMBOL mezőt; karaktert illeszt be kódpont alapján |
FieldSymbol.CharacterCode | A karakter kódpontja, decimális vagy hexadecimális formátumban |
FieldSymbol.IsAnsi / IsUnicode / IsShiftJis | Kiválasztja, hogyan értelmeződik a CharacterCode |
FieldSymbol.FontName / FontSize | A lekért karakter megjelenítésére használt betűtípus |
FieldSymbol.DontAffectsLineSpacing | Azt szabályozza, hogy a beszúrt karakter hatással van-e a bekezdés sorközére |