ทำงานกับการตั้งค่าเอกสาร
การทำงานกับการตั้งค่าเอกสาร
นอกจากเนื้อหาแล้ว เอกสาร Word ยังบรรจุการตั้งค่าระดับแอปพลิเคชัน – สวิตช์ความเข้ากันได้แบบเก่า, การตั้งค่าการใส่เครื่องหมายยัติภังค์, การกำหนดค่า mail-merge ที่เก็บไว้, ตัวเลือกการมองเห็น, และสถานะการป้องกันการเขียน. Aspose.Words FOSS สำหรับ .NET เปิดเผยสิ่งเหล่านี้ผ่าน Aspose.Words.Settings namespace และคุณสมบัติไม่กี่อย่างบน Document. หน้านี้ครอบคลุมแต่ละกลุ่มการตั้งค่าและสิ่งที่มันทำได้และไม่ได้ควบคุม.
ตัวเลือกความเข้ากันได้
Document.CompatibilityOptions คืออินสแตนซ์ของ CompatibilityOptions ที่เก็บสวิตช์บูลีนหลายสิบตัวซึ่งจำลองพฤติกรรมการจัดหน้าและการเว้นระยะของ Word รุ่นเก่า – ตัวอย่างเช่น GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout และ BalanceSingleByteDoubleByteWidth. ตั้งค่าคุณสมบัติที่คุณต้องการโดยตรงเพื่อให้ตรงกับพฤติกรรมการเรนเดอร์เฉพาะของรุ่น Word ในเครื่องมือ downstream ที่อ่านเอกสาร.
การตั้งค่าการใส่เครื่องหมายยัติภังค์
Document.HyphenationOptions คืออินสแตนซ์ของ HyphenationOptions (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) ที่เก็บการตั้งค่าการใส่เครื่องหมายยัติภังค์ของ Word สำหรับเอกสารนี้ คุณสมบัติเหล่านี้ทำการ round-trip คำขอ; เนื่องจากฉบับนี้ไม่ได้รวมเอาเอนจินการจัดหน้า, Aspose.Words FOSS ไม่ได้คำนวณการแยกยัติภังค์ด้วยตนเอง – Word จะประยุกต์ใช้เมื่อเปิดและทำการแบ่งหน้าไฟล์.
การกำหนดค่าการรวมจดหมาย
Document.MailMergeSettings เป็นอินสแตนซ์ของ MailMergeSettings ที่เก็บการกำหนดค่าการรวมจดหมายที่บันทึกในเอกสาร: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord และ ViewMergedData, รวมทั้ง Clear() และ Clone(). สำหรับแหล่งข้อมูลภายนอกที่เชื่อมต่อผ่านกลไก Office Data Source Object ของ Word, MailMergeSettings.Odso เปิดเผยอินสแตนซ์ของ Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) ที่มี FieldMapDatas (OdsoFieldMapDataCollection ของ OdsoFieldMapData: Name, MappedName, Column, Type) และ RecipientDatas (OdsoRecipientDataCollection ของ OdsoRecipientData: Active, Column, Hash, UniqueTag) อธิบายการแมปฟิลด์และรายชื่อผู้รับ.
การตั้งค่ามุมมองเอกสาร
Document.ViewOptions เป็นอินสแตนซ์ของ ViewOptions ที่ควบคุมวิธีที่ Word แสดงไฟล์เมื่อเปิด: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries และ FormsDesign. คุณสมบัติเหล่านี้มีผลต่อการแสดงผลของ Word ต่อเอกสารเท่านั้น – พวกมันไม่มีผลต่อวิธีที่ Aspose.Words FOSS เองประมวลผลเอกสารนี้.
การป้องกันการเขียน
Document.WriteProtection เป็นอินสแตนซ์ของ WriteProtection (IsWriteProtected, ReadOnlyRecommended) ที่มี SetPassword() เพื่อกำหนดรหัสผ่านป้องกันและ ValidatePassword() เพื่อตรวจสอบรหัสผ่านที่เสนอว่าตรงกับรหัสผ่านนั้นหรือไม่.
หน่วยการวัด
enum MeasurementUnits ระบุหน่วยการวัดที่ Word ควรใช้ในอินเทอร์เฟซของเอกสาร.
เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุด
CompatibilityOptions.OptimizeFor(MsWordVersion)มีอยู่ในคลาสแต่การทำงานยังไม่สมบูรณ์ในรุ่นนี้ – มันจะโยนNotImplementedException. ตั้งค่าคุณสมบัติ booleanCompatibilityOptionsแต่ละตัวที่คุณต้องการโดยตรงแทนการพึ่งพาOptimizeForเพื่อใช้โปรไฟล์เวอร์ชันทั้งหมดพร้อมกัน.MailMergeSettingsandOdsoเก็บ mail-merge configuration ที่บันทึกไว้ในเอกสาร – การอ่านและเขียนการกำหนดค่านั้นได้รับการสนับสนุน แต่การดำเนินการ mail merge (การเติมฟิลด์จากแหล่งข้อมูลสด) ไม่ได้รวมอยู่ในรุ่นโอเพนซอร์สนี้.HyphenationOptionsและViewOptionsเป็นการตั้งค่าแสดงผล/UI ที่ Word เองใช้ – อย่าคาดหวังว่าการเรียกDocument.Save()จะเปลี่ยนวิธีการตัดบรรทัดหรือการแสดงผลของข้อความตามการตั้งค่าเหล่านี้ เพราะรุ่นนี้ไม่ได้รวมเอาเอนจินการจัดหน้า.- เรียก
WriteProtection.SetPassword()ก่อนเปิดใช้งานIsWriteProtectedและใช้ValidatePassword()เพื่อตรวจสอบรหัสผ่านที่เป็นไปได้แทนการเก็บหรือเปรียบเทียบสตริงดิบด้วยตนเอง. CompatibilityOptions,HyphenationOptions,MailMergeSettings,ViewOptionsและWriteProtectionสามารถเข้าถึงได้โดยตรงจากDocument– ไม่จำเป็นต้องค้นหาในโครงสร้าง node tree เพื่อหา.
ปัญหาทั่วไป
| ปัญหา | สาเหตุ | แก้ไข |
|---|---|---|
CompatibilityOptions.OptimizeFor() เกิดข้อยกเว้น NotImplementedException | ยังไม่ได้ทำในรุ่นนี้ | ตั้งค่าคุณสมบัติบูลีน CompatibilityOptions แต่ละรายการแทน |
| Mail merge ไม่ได้เติมข้อมูลลงในเอกสาร | MailMergeSettings จะเก็บเฉพาะการกำหนดค่าการรวม; การดำเนินการไม่ได้รวมอยู่ในรุ่นนี้ | อ่านการกำหนดค่าตำแหน่งข้อมูลที่จัดเก็บและดำเนินตรรกะการเติมฟิลด์ของคุณเอง, หรือใช้เวอร์ชันเชิงพาณิชย์ Aspose.Words สำหรับ .NET |
การเปลี่ยนแปลง ViewOptions.ZoomPercent ไม่ส่งผลที่มองเห็นได้เมื่อประมวลผลเอกสาร | ViewOptions มีผลต่อการแสดงผลของ Word เท่านั้น ไม่กระทบต่อการประมวลผลของ Aspose.Words FOSS เอง | พฤติกรรมที่คาดหวัง – ไม่จำเป็นต้องแก้ไข |
WriteProtection.ValidatePassword() คืนค่า false อย่างไม่คาดคิด | SetPassword() ไม่ได้ถูกเรียกใช้เป็นอันดับแรก หรือมีการตั้งรหัสผ่านที่แตกต่าง | เรียก SetPassword() เพื่อกำหนดรหัสผ่านที่ได้รับการป้องกันก่อนทำการตรวจสอบ |
FAQ
ฉันสามารถใช้ Aspose.Words FOSS เพื่อดำเนินการ mail merge จริงได้หรือไม่?
ไม่. MailMergeSettings และ Odso ให้คุณอ่านและเขียนการกำหนดค่าการรวมที่เก็บไว้ในเอกสาร, แต่การดำเนินการเมลเมิร์จ – การเติมฟิลด์จากแหล่งข้อมูล – ไม่ได้รวมอยู่ในรุ่นโอเพนซอร์สนี้.
CompatibilityOptions.OptimizeFor() ทำงานหรือไม่?
ไม่ – มันโยน NotImplementedException ในการสร้างนี้. ตั้งค่าคุณสมบัติ CompatibilityOptions แต่ละอย่างที่คุณต้องการโดยตรงแทน.
ฉันจะตั้งรหัสผ่านเพื่อป้องกันการแก้ไขเอกสารได้อย่างไร?
เรียก WriteProtection.SetPassword() บน Document.WriteProtection, จากนั้นตั้งค่า IsWriteProtected เพื่อเปิดใช้งานการป้องกัน.
HyphenationOptions และ ViewOptions ทำให้รูปแบบการจัดวางเอกสารเปลี่ยนแปลงหรือไม่?
ไม่. ทั้งสองเป็นการตั้งค่าที่เก็บไว้ซึ่ง Microsoft Word ใช้เมื่อเปิดและแสดงไฟล์. รุ่นนี้ไม่ได้รวม page-layout engine, ดังนั้นการตั้งค่าเหล่านี้จะผ่านไปโดยไม่มี Aspose.Words FOSS เองคำนวณการจัดหน้าจากมัน.
API Reference สรุป
| คลาส / Enum | คำอธิบาย |
|---|---|
CompatibilityOptions | สวิตช์การจัดวาง/ระยะห่างแบบรุ่น Word เก่า, ผ่าน Document.CompatibilityOptions |
Compatibility | Enum ที่ตั้งชื่อตัวเลือกความเข้ากันได้แต่ละรายการ |
MsWordVersion | ค่ารุ่น Word ที่ใช้โดย CompatibilityOptions.OptimizeFor() |
HyphenationOptions | การตั้งค่าการแบ่งคำด้วยเครื่องหมายยัติภังค์, ผ่าน Document.HyphenationOptions |
MailMergeSettings | การกำหนดค่าการผสานจดหมายที่เก็บไว้ผ่าน Document.MailMergeSettings |
Odso | การตั้งค่าการเชื่อมต่อ Office Data Source Object สำหรับการผสานจดหมาย |
OdsoFieldMapData / OdsoFieldMapDataCollection | การแมปคอลัมน์ไปยังฟิลด์การผสานสำหรับแหล่งข้อมูล ODSO |
OdsoRecipientData / OdsoRecipientDataCollection | สถานะการรวม/ยกเว้นตามผู้รับสำหรับการผสานจดหมาย |
ViewOptions | การตั้งค่าการแสดงผลของ Word (การซูม, เครื่องหมายการจัดรูปแบบ), ผ่าน Document.ViewOptions |
WriteProtection | สถานะการป้องกันการเขียนของเอกสาร, ผ่าน Document.WriteProtection |
MeasurementUnits | หน่วยวัดที่ Word ควรใช้ในอินเทอร์เฟซ |