Bordi e sfumature

Bordi e sfumature

Bordi e ombreggiatura

La formattazione dei bordi e dell’ombreggiatura in Aspose.Words FOSS per .NET è modellata da due classi di attributi correlate: Border, che descrive una singola linea di bordo, e Shading, che descrive un modello di riempimento di sfondo. Paragrafi, tabelle, celle e caratteri espongono ciascuno un BorderCollection (più lati Border) e un unico oggetto Shading attraverso le rispettive proprietà di formattazione.


Lavorare con i bordi individuali

Un oggetto Border rappresenta una linea di bordo e espone LineStyle (un valore enum da LineStyle, come Single, Double, Dot o Wave), LineWidth, Color, DistanceFromText, Shadow e le proprietà ThemeColor/TintAndShade sensibili al tema. Chiama ClearFormatting() su un Border per ripristinarlo allo stato predefinito (senza bordo).

BorderCollection raggruppa più oggetti Border per i lati di un oggetto. Espone proprietà nominate per i quattro bordi — Left, Right, Top, Bottom — oltre a Horizontal e Vertical per i bordi interni della tabella. L’indicizzatore BorderCollection recupera un lato specifico usando un valore enum BorderType (Left, Right, Top, Bottom, Horizontal, Vertical, DiagonalDown, DiagonalUp o None) come chiave. Impostare LineWidth, LineStyle o Color direttamente sulla collezione applica quel valore a tutti i bordi contenuti contemporaneamente; ClearFormatting() cancella tutti i bordi nella collezione insieme.


Applicare l’ombreggiatura

Shading contiene il modello di sfondo per un oggetto: BackgroundPatternColor e ForegroundPatternColor definiscono i due colori del modello, e Texture (un valore enum TextureIndex) seleziona il modello — i riempimenti solidi usano TextureIndex.TextureSolid, mentre i modelli percentuali e direzionali (Texture10Percent fino a Texture97Pt5Percent, TextureHorizontal, TextureDiagonalCross e altri) riproducono la galleria di ombreggiatura di Word. ForegroundPatternThemeColor e BackgroundPatternThemeColor forniscono equivalenti di colore del tema, insieme alla regolazione tinta/ombreggiatura tramite ForegroundTintAndShade e BackgroundTintAndShade. ClearFormatting() ripristina un oggetto Shading a nessun riempimento.


Suggerimenti e migliori pratiche

  • Imposta Texture a TextureIndex.TextureSolid e usa BackgroundPatternColor per una riempitura di sfondo semplice — il caso di ombreggiatura più comune.
  • Utilizza l’indicizzatore BorderCollection (borders[BorderType.Horizontal] / borders[BorderType.Vertical]) per raggiungere le linee di griglia interne di una tabella, che non sono esposte come proprietà nominate.
  • Impostare le proprietà direttamente su un BorderCollection (piuttosto che su un singolo Left/Right/Top/Bottom Border) è il modo più veloce per applicare bordi uniformi a tutti i lati.
  • Ricorda che LineStyle.None rimuove la linea visibile senza cancellare il resto della larghezza o del colore del bordo configurati — usa ClearFormatting() per un reset completo.
  • I bordi delle celle della tabella e dei paragrafi sono istanze BorderCollection indipendenti; impostarne uno non influisce sull’altro.

Problemi comuni

ProblemaCausaCorrezione
Bordo non visibile dopo aver impostato ColorLineStyle lasciato a LineStyle.NoneImposta LineStyle su uno stile visibile come Single prima di salvare
L’ombreggiatura appare come riempimento solido quando ci si aspettava un motivoTexture lasciato al valore predefinitoImposta esplicitamente Texture al costante di pattern desiderato
I bordi interni della tabella non sono influenzati dalle modifiche ai bordi esterniHorizontal/Vertical sono separati da Left/Right/Top/BottomImposta BorderCollection.Horizontal e .Vertical esplicitamente
L’indicizzatore BorderCollection restituisce un bordo inaspettatoValore BorderType errato fornitoConferma che il valore enum BorderType corrisponda al lato previsto

FAQ

Come posso applicare lo stesso bordo a tutti e quattro i lati di una cella di tabella?

Imposta LineStyle, LineWidth e Color direttamente sul BorderCollection della cella anziché su ciascuno di Left, Right, Top e Bottom individualmente — i setter a livello di raccolta si applicano a tutti i bordi che contiene.

Qual è la differenza tra Border e Shading?

Border descrive una linea (stile, larghezza, colore) disegnata lungo un bordo; Shading descrive un motivo di riempimento di sfondo dietro il contenuto. Sono indipendenti — un oggetto può avere l’ombreggiatura senza bordi, o bordi senza ombreggiatura.

Quale enum controlla il modello di linea visiva di un bordo?

LineStyle, con valori come Single, Double, Dot, DashSmallGap e Wave.

Posso rimuovere completamente un bordo?

Sì — chiama ClearFormatting() sul Border o BorderCollection, oppure imposta LineStyle su LineStyle.None.


API Reference Riepilogo

Classe / MetodoDescrizione
BorderUna singola linea di bordo: stile, larghezza, colore, ombra
BorderCollectionL’insieme dei bordi (Left, Right, Top, Bottom, Horizontal, Vertical) per un oggetto
BorderTypeEnum che identifica un lato del bordo
LineStyleEnum di stili di linea visivi (Single, Double, Dot, ecc.)
ShadingRiempimento del motivo di sfondo: colori e Texture
TextureIndexEnum dei pattern di texture di ombreggiatura

Vedi anche

 Italiano