ขอบและการไล่สี

ขอบและการไล่สี

เส้นขอบและการระบายสี

การจัดรูปแบบเส้นขอบและการระบายสีใน 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 (แทนที่จะเป็นบน individual Left/Right/Top/Bottom Border) เป็นวิธีที่เร็วที่สุดในการใช้เส้นขอบแบบสม่ำเสมอบนทุกด้าน.
  • จำไว้ว่า LineStyle.None จะลบเส้นที่มองเห็นได้โดยไม่ล้างความกว้างหรือสีที่กำหนดของเส้นขอบส่วนอื่น — ใช้ ClearFormatting() เพื่อรีเซ็ตเต็มรูปแบบ.
  • เส้นขอบของเซลล์ตารางและย่อหน้าคืออินสแตนซ์ BorderCollection ที่แยกจากกัน; การตั้งค่าอันหนึ่งจะไม่ส่งผลต่ออีกอัน.

ปัญหาทั่วไป

ปัญหาสาเหตุวิธีแก้ไข
เส้นขอบไม่ปรากฏหลังจากตั้งค่า ColorLineStyle ทิ้งไว้ที่ 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) สำหรับวัตถุ
BorderTypeEnum ที่ระบุด้านของขอบ
LineStyleEnum ของรูปแบบเส้นภาพ (Single, Double, Dot, ฯลฯ)
Shadingการเติมลายพื้นหลัง: สีและ Texture
TextureIndexEnum ของพื้นผิวลายเงา

ดูเพิ่มเติม

 ภาษาไทย