גבולות והצללה
גבולות והצללה
עיצוב גבול והצללה ב-Aspose.Words FOSS עבור .NET מודל על ידי שני מחלקות תכונה קשורות: Border, המתארת קו גבול יחיד, ו-Shading, המתארת תבנית מילוי רקע. פסקאות, טבלאות, תאים וגופנים כל אחד חושף BorderCollection (צדדים מרובים של Border) ו-אובייקט Shading יחיד דרך תכונות העיצוב שלהם.
עבודה עם גבולות בודדים
אובייקט Border מייצג קו גבול אחד ומחשף את LineStyle (ערך enum מ-LineStyle, כגון Single, Double, Dot או Wave), LineWidth, Color, DistanceFromText, Shadow, ו-תכונות מודעות נושא ThemeColor/TintAndShade. יש לקרוא ל-ClearFormatting() על Border כדי לאפס אותו למצב ברירת המחדל (ללא גבול).
BorderCollection מקבץ מספר רב של אובייקטים Border עבור צדדי האובייקט. הוא חושף תכונות בעלות שם עבור ארבעת הקצוות — Left, Right, Top, Bottom — וכן Horizontal ו-Vertical עבור גבולות פנימיים של טבלה. המדד BorderCollection מחזיר צד ספציפי באמצעות ערך enum של BorderType (Left, Right, Top, Bottom, Horizontal, Vertical, DiagonalDown, DiagonalUp או None) כמפתח. הגדרת LineWidth, LineStyle או Color ישירות על האוסף מחילה ערך זה על כל הגבולות שהוא מכיל במקביל; ClearFormatting() מוחקת את כל הגבולות באוסף יחד.
החלת הצללה
Shading נושא את תבנית הרקע עבור אובייקט: BackgroundPatternColor ו-ForegroundPatternColor מגדירים את שני צבעי התבנית, ו-Texture (ערך enum של TextureIndex) בוחר את התבנית — מילויים מוצקים משתמשים ב-TextureIndex.TextureSolid, בעוד תבניות אחוזיות וכיווניות (Texture10Percent עד Texture97Pt5Percent, TextureHorizontal, TextureDiagonalCross ועוד) משחזרים את גלריית ההצללה של Word. ForegroundPatternThemeColor ו-BackgroundPatternThemeColor מספקים מקבילי צבעי נושא, יחד עם התאמת גוון/צלייה דרך ForegroundTintAndShade ו-BackgroundTintAndShade. ClearFormatting() מאפס אובייקט Shading ללא מילוי.
טיפים ושיטות עבודה מומלצות
- הגדר את
Textureל-TextureIndex.TextureSolidוהשתמש ב-BackgroundPatternColorלמילוי רקע פשוט — המקרה הנפוץ ביותר של הצללה. - השתמש במאינדקס
BorderCollection(borders[BorderType.Horizontal]/borders[BorderType.Vertical]) כדי להגיע לקווי הרשת הפנימיים של טבלה, אשר אינם חשופים כמאפיינים בשם. - הגדרת מאפיינים ישירות על
BorderCollection(במקום עלLeft/Right/Top/BottomBorderנפרדים) היא הדרך המהירה ביותר ליישם גבולות אחידים על כל הצדדים. - זכור ש-
LineStyle.Noneמסיר את הקו הגלוי מבלי למחוק את שאר הרוחב או הצבע המוגדרים של הגבול — השתמש ב-ClearFormatting()לאיפוס מלא. - גבולות של תאי טבלה ופסקאות הם מופעים בלתי תלויים של
BorderCollection; הגדרה של אחד אינה משפיעה על השני.
בעיות נפוצות
| בעיה | סיבה | תיקון |
|---|---|---|
הגבול אינו נראה לאחר הגדרת Color | LineStyle נשאר בLineStyle.None | הגדר את LineStyle לסגנון גלוי כגון Single לפני השמירה |
| הצללה מופיעה כמילוי אחיד כאשר היה צפוי דפוס | Texture נשאר בברירת המחדל | הגדר במפורש את Texture לקבוע הדפוס הרצוי |
| גבולות פנימיים של הטבלה אינם מושפעים משינויים בגבול החיצוני | Horizontal/Vertical נפרדים מ-Left/Right/Top/Bottom | הגדר את BorderCollection.Horizontal ו-.Vertical במפורש |
האינדקסר של BorderCollection מחזיר גבול בלתי צפוי | הועבר ערך BorderType שגוי | אשר שהערך של ה-enum BorderType תואם את הצד המיועד |
FAQ
איך אני מיישם את אותו גבול על כל ארבעת הצדות של תא בטבלה?
הגדר את LineStyle, LineWidth ו-Color ישירות על BorderCollection של התא במקום על כל אחד מ-Left, Right, Top ו-Bottom בנפרד — הגדרות ברמת האוסף חלות על כל גבול שהוא מכיל.
מה ההבדל בין Border ל-Shading?
Border מתאר קו (סגנון, רוחב, צבע) שנמשך לאורך קצה; Shading מתאר דפוס מילוי רקע מאחורי התוכן. הם בלתי תלויים — אובייקט יכול להכיל הצללה ללא גבולות, או גבולות ללא הצללה.
איזה enum שולט בדפוס הקו החזותי של גבול?
LineStyle, עם ערכים כגון Single, Double, Dot, DashSmallGap ו-Wave.
האם אפשר להסיר גבול לחלוטין?
כן — קרא ל-ClearFormatting() על ה-Border או BorderCollection, או הגדר את LineStyle ל-LineStyle.None.
API Reference סיכום
| מחלקה / מתודה | תיאור |
|---|---|
Border | קו גבול יחיד: סגנון, רוחב, צבע, הצללה |
BorderCollection | קבוצת הגבולות (Left, Right, Top, Bottom, Horizontal, Vertical) עבור אובייקט |
BorderType | Enum שמזהה צד גבול |
LineStyle | Enum של סגנונות קו חזותיים (Single, Double, Dot, וכו') |
Shading | מילוי תבנית רקע: צבעים וTexture |
TextureIndex | Enum של מרקמי תבניות הצללה |