การทำงานกับธีมเอกสาร
การทำงานกับธีมเอกสาร
คู่มือนี้แสดงวิธีอ่านและปรับแต่งโ_schemeสีและฟอนต์ที่เอกสาร Word แบ่งปันกับแอปพลิเคชัน Office อื่น ๆ – ธีมของเอกสาร – โดยใช้ Theme, ThemeColors, และ ThemeFonts in Aspose.Words FOSS สำหรับ .NET. ธีมของเอกสารคือพาเลตและการจับคู่ฟอนต์ที่การจัดรูปแบบที่รับรู้ธีมในส่วนอื่นของโมเดลวัตถุอ้างอิงแทนการกำหนดสีหรือชื่อฟอนต์แบบคงที่.
วัตถุธีม
Document.Theme ส่งคืนอินสแตนซ์ Theme สำหรับเอกสาร. Theme.Colors คืออ็อบเจกต์ ThemeColors ที่เก็บสีธีมสิบสองสีของเอกสาร; Theme.MajorFonts และ Theme.MinorFonts คืออ็อบเจกต์ ThemeFonts ที่เก็บชุดแบบอักษรหัวเรื่องและเนื้อหาตามลำดับ.
สีธีม
ThemeColors เปิดเผยคุณสมบัติที่เขียนได้สิบสอง Color คุณสมบัติ: Dark1, Light1, Dark2, Light2, Accent1 through Accent6, Hyperlink, และ FollowedHyperlink. วัตถุการจัดรูปแบบในส่วนอื่นของเอกสาร – Border.ThemeColor, Shading.ForegroundPatternThemeColor / BackgroundPatternThemeColor, Fill.ForeThemeColor / BackThemeColor, Stroke.ForeThemeColor / BackThemeColor, และ Font.ThemeColor – เก็บ a ThemeColor enum value (Dark1, Light1, Dark2, Light2, Accent1-Accent6, Hyperlink, FollowedHyperlink, บวก Text1, Text2, Background1, Background2, และ None) ที่ระบุ which ธีมสีสล็อตที่ใช้; ค่าจริง Color ค่า สำหรับสล็อตนั้นมาจากที่สอดคล้อง ThemeColors คุณสมบัติเปิด Document.Theme.Colors.
แบบอักษรธีม
ThemeFonts เปิดเผยคุณสมบัติ string ที่เขียนได้สามรายการ: Latin (สำหรับอักษรสคริปต์ละติน), EastAsian และ ComplexScript – ชื่อฟอนต์ที่ใช้สำหรับแต่ละสคริปต์เมื่อวัตถุการจัดรูปแบบส่งต่อไปยังธีม. Font.ThemeFont, ThemeFontAscii, ThemeFontFarEast, ThemeFontOther และ ThemeFontBi แต่ละตัวเก็บค่า enum ThemeFont (Major, Minor หรือ None) ที่ระบุว่าวัตถุ Font ใดส่งต่อไปยัง Theme.MajorFonts หรือ Theme.MinorFonts สำหรับช่วงสคริปต์เฉพาะหรือไม่ แทนที่จะเก็บชื่อฟอนต์โดยตรงของตัวเอง.
เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุด
- เปลี่ยนสีทั่วทั้งหมดของเส้นขอบ, การเงา, การเติมสี, และฟอนต์ที่รับรู้ธีมได้ในการแก้ไขหนึ่งครั้งโดยอัปเดตคุณสมบัติ
ThemeColorsที่เกี่ยวข้องบนDocument.Theme.Colors, แทนที่จะต้องเดินผ่านเอกสารเพื่ออัปเดตวัตถุการจัดรูปแบบแต่ละรายการแยกกัน. - ตรวจสอบว่าคุณสมบัติ
ThemeColorหรือThemeFontของวัตถุการจัดรูปแบบเป็นNoneหรือไม่ก่อนที่จะสันนิษฐานว่ามันส่งต่อไปยังธีม –Noneหมายถึงว่ามันมีColorหรือชื่อฟอนต์ของตนเองโดยชัดเจนแทน. Theme.MajorFontsโดยทั่วไปจะจัดหาแบบอักษรหัวข้อและTheme.MinorFontsแบบอักษรเนื้อหา, ตรงกับตัวเลือกฟอนต์ธีมของ Word เอง.
ปัญหาทั่วไป
| ปัญหา | สาเหตุ | การแก้ไข |
|---|---|---|
การเปลี่ยน Document.Theme.Colors.Accent1 ไม่ส่งผลต่อการเติมสีของรูปร่าง | ค่า Fill.ForeThemeColor ของรูปร่างคือ ThemeColor.None ดังนั้นจึงใช้สีที่กำหนดโดยตรงแทนช่องสีของธีม | ตั้งค่า Fill.ForeThemeColor เป็นค่า ThemeColor ที่ต้องการเพื่อให้ยึดตามธีม |
แบบอักษรที่แสดงผลของ Font ไม่ตรงกับ Theme.MajorFonts.Latin | ค่า Font.ThemeFont (หรือรูปแบบเฉพาะสคริปต์) คือ ThemeFont.None ดังนั้นชื่อของฟอนต์เองจึงถูกใช้แทน | ตั้งค่า property ThemeFont ที่เกี่ยวข้องเป็น Major หรือ Minor |
FAQ
ฉันจะอ่านสีธีมของเอกสารได้อย่างไร?
อ่าน Document.Theme.Colors ซึ่งเป็นอ็อบเจ็กต์ ThemeColors ที่มีคุณสมบัติ Color สำหรับแต่ละช่องสีของธีมทั้งสิบสอง – Dark1, Light1, Dark2, Light2, Accent1-Accent6, Hyperlink และ FollowedHyperlink.
ฉันจะเปลี่ยนสีเน้นของเอกสารทุกที่ที่ใช้งานอย่างไร?
ตั้งค่า Document.Theme.Colors.Accent1 (หรือช่องสีเน้นใดก็ได้) ให้เป็น Color ใหม่; อ็อบเจ็กต์การจัดรูปแบบทุกตัวที่มีคุณสมบัติ ThemeColor อ้างอิงถึงช่องนั้นจะรับการเปลี่ยนแปลงนี้.
ความแตกต่างระหว่าง ThemeColors กับ ThemeColor คืออะไร?
ThemeColors (บน Document.Theme.Colors) คืออ็อบเจ็กต์ที่เก็บค่าจริงของ Color ทั้งสิบสองสำหรับเอกสาร. ThemeColor คือ enum ที่ใช้ในที่อื่น (Border, Shading, Fill, Stroke, Font) เพื่ออ้างอิงหนึ่งในช่องเหล่านั้นโดยใช้ชื่อแทนการเก็บสีโดยตรง.
ฉันจะตั้งค่าแบบอักษรของธีมที่อ็อบเจ็กต์ Font ใช้ได้อย่างไร?
ตั้งค่า Font.ThemeFont (หรือ ThemeFontAscii / ThemeFontFarEast / ThemeFontOther / ThemeFontBi ที่เฉพาะของสคริปต์) ให้เป็น ThemeFont.Major หรือ ThemeFont.Minor; ชื่อแบบอักษรจริงจะมาจาก Document.Theme.MajorFonts หรือ MinorFonts.
API Reference สรุป
| คลาส / Enum | คำอธิบาย |
|---|---|
Theme | ธีมเอกสาร, ผ่าน Document.Theme; MajorFonts, MinorFonts, Colors |
ThemeColors | สิบสองช่องของธีม Color: Dark1, Light1, Dark2, Light2, Accent1-Accent6, Hyperlink, FollowedHyperlink |
ThemeFonts | ชื่อฟอนต์ของธีมตามสคริปต์: Latin, EastAsian, ComplexScript |
ThemeColor | Enum ที่ระบุสล็อตสีของธีม; ใช้โดย Border, Shading, Fill, Stroke, Font |
ThemeFont | Enum ที่ระบุการใช้ฟอนท์ธีม Major/Minor; ใช้โดย Font |