Szegélyek és árnyékolás
Szegélyek és árnyékolás
A Aspose.Words FOSS .NET számára a szegély- és árnyékolási formázást két kapcsolódó attribútumosztály modellezi: Border, amely egyetlen szegélyvonalat ír le, és Shading, amely egy háttérkitöltés mintát ír le. A bekezdések, táblázatok, cellák és betűtípusok mindegyike egy BorderCollection (több Border oldal) és egyetlen Shading objektumot tesz elérhetővé a saját formázási tulajdonságaikon keresztül.
Egyedi szegélyek kezelése
A Border objektum egy szegélyvonalat képvisel, és elérhetővé teszi a LineStyle (egy LineStyle enum érték, például Single, Double, Dot vagy Wave), LineWidth, Color, DistanceFromText, Shadow, valamint a témához igazodó ThemeColor/TintAndShade tulajdonságokat. Hívja a ClearFormatting() egy Border objektumon, hogy az alapértelmezett (nincs szegély) állapotba állítsa vissza.
BorderCollection csoportosít több Border objektumot egy objektum oldalaihoz. Elérhetővé tesz elnevezett tulajdonságokat a négy él számára — Left, Right, Top, Bottom — valamint Horizontal és Vertical a táblázat belső szegélyeihez. A BorderCollection indexer egy adott oldalt kér le egy BorderType enum érték (Left, Right, Top, Bottom, Horizontal, Vertical, DiagonalDown, DiagonalUp, vagy None) kulcsként. A LineWidth, LineStyle vagy Color közvetlen beállítása a gyűjteményen egyszerre az összes benne lévő szegélyre alkalmazza ezt az értéket; a ClearFormatting() egyszerre törli a gyűjtemény összes szegélyét.
Árnyékolás alkalmazása
Shading hordozza az objektum háttérmintáját: BackgroundPatternColor és ForegroundPatternColor határozzák meg a két minta színét, és Texture (egy TextureIndex enum érték) választja ki a mintát — szilárd kitöltésekhez TextureIndex.TextureSolid használatos, míg a százalékos és irányított minták (Texture10Percent-tól Texture97Pt5Percent-ig, TextureHorizontal, TextureDiagonalCross és mások) a Word árnyékolási galériáját reprodukálják. ForegroundPatternThemeColor és BackgroundPatternThemeColor témaszín megfelelőket biztosítanak, valamint a ForegroundTintAndShade és BackgroundTintAndShade által végzett színárnyalat/módosítás. ClearFormatting() visszaállít egy Shading objektumot üres kitöltésre.
Tippek és bevált gyakorlatok
- Állítsa be a
TextureértékétTextureIndex.TextureSolid-re, és használja aBackgroundPatternColor-t egyszerű háttérkitöltéshez — a leggyakoribb árnyalási eset. - Használja a
BorderCollectionindexelőt (borders[BorderType.Horizontal]/borders[BorderType.Vertical]), hogy elérje egy táblázat belső rácsvonalait, amelyek nem jelennek meg nevű tulajdonságokként. - Tulajdonságok közvetlen beállítása egy
BorderCollection-n (ahelyett, hogy egyediLeft/Right/Top/BottomBorder-n) a leggyorsabb módja az egységes szegélyek minden oldalra való alkalmazásának. - Ne feledje, hogy a
LineStyle.Noneeltávolítja a látható vonalat anélkül, hogy törölné a szegély beállított szélességét vagy színét — használja aClearFormatting()-t a teljes visszaállításhoz. - A táblázatcellák és bekezdések szegélyei független
BorderCollectionpéldányok; az egyik beállítása nem befolyásolja a másikat.
Gyakori problémák
| Probléma | Ok | Javítás |
|---|---|---|
A szegély nem látható a Color beállítása után | LineStyle maradt LineStyle.None | Állítsa be a LineStyle értékét látható stílusra, például Single, mentés előtt |
| Az árnyalás szilárd kitöltésként jelenik meg, amikor mintára számítottunk | Texture az alapértelmezett értéken maradt | Explicit módon állítsa be a(z) Texture értékét a kívánt mintakonstansra |
| A táblázat belső szegélyei nem érintettek a szélső szegélyváltozásoktól | Horizontal/Vertical különállóak a Left/Right/Top/Bottom elemtől | Állítsa be a BorderCollection.Horizontal és a .Vertical explicit módon |
A(z) BorderCollection indexelő váratlan szegélyt ad vissza | Hibás BorderType érték lett átadva | Győződjön meg arról, hogy a(z) BorderType enum értéke megegyezik a kívánt oldallal |
FAQ
Hogyan alkalmazhatom ugyanazt a keretet a táblázatcellának mind a négy oldalára?
Állítsa be a LineStyle, LineWidth és Color értékeket közvetlenül a cella BorderCollection attribútumán, ahelyett, hogy egyenként a Left, Right, Top és Bottom értékeken – a gyűjtemény-szintű beállítók minden tartalmazott keretre vonatkoznak.
Mi a különbség a Border és a Shading között?
Border egy vonalat (stílus, vastagság, szín) ír le, amely az él mentén van megrajzolva; Shading egy háttérkitöltési mintát ír le a tartalom mögött. Függetlenek — egy objektum lehet árnyékolással keret nélkül, vagy kerettel árnyékolás nélkül.
Melyik enum vezérli a keret vizuális vonalmintáját?
LineStyle, olyan értékekkel, mint a Single, Double, Dot, DashSmallGap és Wave.
Eltávolíthatok egy keretet teljesen?
Igen — hívja meg a ClearFormatting() függvényt a Border vagy a BorderCollection objektumon, vagy állítsa be a LineStyle értékét LineStyle.None-re.
API Reference Összefoglaló
| Osztály / Metódus | Leírás |
|---|---|
Border | Egyetlen keretvonal: stílus, szélesség, szín, árnyék |
BorderCollection | Az objektumhoz tartozó keretek halmaza (Left, Right, Top, Bottom, Horizontal, Vertical) |
BorderType | Enum, amely a határ oldalát azonosítja |
LineStyle | Enum a vizuális vonalstílusokról (Single, Double, Dot, stb.) |
Shading | Háttérminta kitöltés: színek és Texture |
TextureIndex | Enum a színező minta textúráiról |