Làm việc với Cài đặt Tài liệu
Làm việc với Cài đặt Tài liệu
Ngoài nội dung, một tài liệu Word còn chứa các cài đặt ở mức ứng dụng – các công tắc tương thích legacy, tùy chọn gạch nối, cấu hình mail-merge đã lưu, tùy chọn hiển thị và trạng thái bảo vệ ghi. Aspose.Words FOSS for .NET tiết lộ chúng thông qua Aspose.Words.Settings không gian tên và một vài thuộc tính trên Document. Trang này trình bày từng nhóm cài đặt và những gì nó kiểm soát và không kiểm soát.
Tùy chọn Tương thích
Document.CompatibilityOptions là một thể hiện CompatibilityOptions chứa hàng chục công tắc boolean tái tạo các hành vi bố cục và khoảng cách của các phiên bản Word cũ – ví dụ GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout, và BalanceSingleByteDoubleByteWidth. Đặt trực tiếp các thuộc tính bạn cần để khớp với những điểm kỳ quặc trong việc render của một phiên bản Word cụ thể trong các công cụ downstream đọc tài liệu.
Tùy chọn Gạch nối
Document.HyphenationOptions là một thể hiện HyphenationOptions (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) lưu trữ các tùy chọn gạch nối của Word cho tài liệu. Các thuộc tính này truyền lại yêu cầu; vì phiên bản này không bao gồm engine bố cục trang, Aspose.Words FOSS không tự tính toán các vị trí gạch nối – Word sẽ áp dụng chúng khi mở và phân trang tệp.
Cấu hình Mail Merge
Document.MailMergeSettings là một thể hiện MailMergeSettings lưu trữ cấu hình mail-merge được ghi lại trong tài liệu: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord, và ViewMergedData, cộng thêm Clear() và Clone(). Đối với các nguồn dữ liệu bên ngoài được kết nối thông qua cơ chế Office Data Source Object của Word, MailMergeSettings.Odso cung cấp một thể hiện Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) mà FieldMapDatas (OdsoFieldMapDataCollection của OdsoFieldMapData: Name, MappedName, Column, Type) và RecipientDatas (OdsoRecipientDataCollection của OdsoRecipientData: Active, Column, Hash, UniqueTag) mô tả việc ánh xạ trường và danh sách người nhận.
Cài đặt chế độ xem tài liệu
Document.ViewOptions là một thể hiện ViewOptions kiểm soát cách Word hiển thị tệp khi nó được mở: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries, và FormsDesign. Các thuộc tính này chỉ ảnh hưởng đến việc hiển thị tài liệu của Word – chúng không ảnh hưởng đến cách Aspose.Words FOSS tự xử lý nó.
Bảo vệ ghi
Document.WriteProtection là một thể hiện WriteProtection (IsWriteProtected, ReadOnlyRecommended) có SetPassword() để thiết lập mật khẩu bảo vệ và ValidatePassword() để kiểm tra mật khẩu dự đoán đối với nó.
Đơn vị đo lường
Enum MeasurementUnits xác định đơn vị đo lường mà Word nên sử dụng trong giao diện cho một tài liệu.
Mẹo và Thực tiễn tốt nhất
CompatibilityOptions.OptimizeFor(MsWordVersion)có trên lớp nhưng phần triển khai chưa hoàn chỉnh trong bản build này – nó némNotImplementedException. Đặt các thuộc tính booleanCompatibilityOptionsriêng lẻ mà bạn cần trực tiếp thay vì dựa vàoOptimizeForđể áp dụng toàn bộ hồ sơ phiên bản một lúc.MailMergeSettingsandOdsolưu mail-merge configuration được ghi lại trong tài liệu – việc đọc và ghi cấu hình đó được hỗ trợ, nhưng thực thi mail merge (điền các trường từ nguồn dữ liệu trực tiếp) không được bao gồm trong phiên bản mã nguồn mở này.HyphenationOptionsvàViewOptionsđều là các tùy chỉnh hiển thị/Giao diện người dùng mà Word tự áp dụng – đừng mong việc gọiDocument.Save()sẽ thay đổi cách văn bản ngắt dòng hoặc hiển thị dựa trên các cài đặt này, vì phiên bản này không bao gồm bộ máy bố cục trang.- Gọi
WriteProtection.SetPassword()trước khi bậtIsWriteProtected, và sử dụngValidatePassword()để kiểm tra mật khẩu dự kiến thay vì tự lưu hoặc so sánh chuỗi thô. CompatibilityOptions,HyphenationOptions,MailMergeSettings,ViewOptions, vàWriteProtectionđều có thể truy cập trực tiếp từDocument– không cần phải tìm kiếm trong cây nút để lấy chúng.
Các vấn đề phổ biến
| Vấn đề | Nguyên nhân | Sửa |
|---|---|---|
CompatibilityOptions.OptimizeFor() ném NotImplementedException | Chưa được thực hiện trong bản dựng này | Thay vào đó, thiết lập các thuộc tính boolean CompatibilityOptions riêng lẻ |
| Mail merge không điền dữ liệu vào tài liệu | MailMergeSettings chỉ lưu cấu hình merge; việc thực thi không được bao gồm trong phiên bản này | Đọc cấu hình nguồn dữ liệu đã lưu và tự điều khiển logic điền trường của bạn, hoặc sử dụng phiên bản thương mại Aspose.Words cho .NET |
Thay đổi ViewOptions.ZoomPercent không có ảnh hưởng rõ rệt khi xử lý tài liệu | ViewOptions chỉ ảnh hưởng đến hiển thị của Word, không ảnh hưởng đến quá trình xử lý của Aspose.Words FOSS | Hành vi mong đợi – không cần sửa |
WriteProtection.ValidatePassword() trả về false một cách bất ngờ | SetPassword() không được gọi đầu tiên, hoặc một mật khẩu khác đã được đặt | Gọi SetPassword() để thiết lập mật khẩu bảo vệ trước khi xác thực |
FAQ
Tôi có thể sử dụng Aspose.Words FOSS để thực hiện một mail merge thực tế không?
Không. MailMergeSettings và Odso cho phép bạn đọc và ghi cấu hình hợp nhất được lưu trong tài liệu, nhưng việc thực thi mail merge – điền các trường từ nguồn dữ liệu – không được bao gồm trong phiên bản mã nguồn mở này.
Liệu CompatibilityOptions.OptimizeFor() có hoạt động không?
Không – nó ném NotImplementedException trong bản dựng này. Thay vào đó, hãy đặt trực tiếp các thuộc tính CompatibilityOptions cá nhân mà bạn cần.
Làm sao tôi có thể bảo vệ tài liệu bằng mật khẩu để ngăn việc chỉnh sửa?
Gọi WriteProtection.SetPassword() trên Document.WriteProtection, sau đó đặt IsWriteProtected để bật bảo vệ.
Liệu HyphenationOptions và ViewOptions có thay đổi cách bố cục tài liệu không?
Không. Cả hai đều là các tùy chọn được lưu mà Microsoft Word áp dụng khi mở và hiển thị tệp. Phiên bản này không bao gồm động cơ bố cục trang, vì vậy các cài đặt này được truyền qua mà không có Aspose.Words FOSS tự tính toán bố cục từ chúng.
Tóm tắt API Reference
| Lớp / Enum | Mô tả |
|---|---|
CompatibilityOptions | Các công tắc bố cục/khoảng cách phiên bản Word kế thừa, thông qua Document.CompatibilityOptions |
Compatibility | Enum đặt tên cho các tùy chọn tương thích riêng lẻ |
MsWordVersion | Các giá trị phiên bản Word được sử dụng bởi CompatibilityOptions.OptimizeFor() |
HyphenationOptions | Cài đặt gạch nối, thông qua Document.HyphenationOptions |
MailMergeSettings | Cấu hình mail-merge đã lưu, thông qua Document.MailMergeSettings |
Odso | Cài đặt kết nối Office Data Source Object cho mail merge |
OdsoFieldMapData / OdsoFieldMapDataCollection | Ánh xạ cột sang trường hợp ghép cho nguồn dữ liệu ODSO |
OdsoRecipientData / OdsoRecipientDataCollection | Trạng thái bao gồm/loại trừ cho từng người nhận trong mail merge |
ViewOptions | Các tùy chọn hiển thị của Word (phóng to, dấu định dạng), qua Document.ViewOptions |
WriteProtection | Trạng thái bảo vệ ghi tài liệu, qua Document.WriteProtection |
MeasurementUnits | Đơn vị đo mà Word nên sử dụng trong giao diện |