.NET で Document Settings を操作する方法
このガイドでは、Aspose.Words FOSS for .NET におけるアプリケーションレベルの文書設定の操作方法を示します:レガシー互換スイッチ、ハイフネーション設定、保存された差し込み印刷構成、表示オプション、書き込み保護。Aspose.Words FOSS for .NET は、NuGet から、またはソースからビルドすることで利用可能です。
ステップバイステップガイド
ステップ 1: ライブラリを取得
リポジトリをクローンしてビルドする Aspose.Words.sln Release 構成で、次にプロジェクト参照を追加します Aspose.Words.csproj 自分の .NET プロジェクトから、インストール ガイドに記載されているように インストール ガイド。追加 using Aspose.Words; and using Aspose.Words.Settings; ドキュメント設定を読み書きする任意のファイルの先頭に.
ステップ 2: レガシー互換オプションを設定
Document.CompatibilityOptions(CompatibilityOptions のインスタンス)は、特定の旧バージョンの Word のレイアウトや間隔の動作を再現する数十個のブールスイッチを保持しています—例として GrowAutofit、UseWord2010TableStyleRules、AdjustLineHeightInTable、AlignTablesRowByRow、NoExtraLineSpacing、SuppressSpacingAtTopOfPage、SpacingInWholePoints があります。必要な個々のプロパティは直接設定してください;OptimizeFor(MsWordVersion) はクラスに存在しますが、このビルドでは NotImplementedException をスローするため、全バージョンプロファイルを一括で適用するショートカットはありません。
ステップ 3: ハイフン設定の構成
Document.HyphenationOptions(HyphenationOptions のインスタンス)は、ドキュメントの Word のハイフネーション設定を保持します: AutoHyphenation、ConsecutiveHyphenLimit、HyphenateCaps、および HyphenationZone。これらのプロパティは保存されたファイル内でリクエストを往復させます;このエディションにはページレイアウトエンジンがないため、ハイフネーションの改行位置は、ファイルを開いてページ割り付けする際に Word が計算し、Aspose.Words FOSS が計算するわけではありません。
ステップ 4: メールマージ設定の読み取りと書き込み
Document.MailMergeSettings(MailMergeSettings のインスタンス)は、ドキュメントに記録されたメールマージ設定を保存します — MainDocumentType、CheckErrors、Destination、DataSource、DataType、Query、ConnectString、MailSubject、MailAsAttachment、ActiveRecord、および ViewMergedData — 加えて Clear() と Clone() を含みます。Word の Office Data Source Object メカニズムを介して接続された外部データソースの場合、MailMergeSettings.Odso は Odso のインスタンス(DataSource、DataSourceType、TableName、ColumnDelimiter、FirstRowContainsColumnNames)を公開し、その FieldMapDatas と RecipientDatas コレクションがフィールドマッピングと受信者リストを記述します。この保存された設定の読み取りと書き込みは本オープンソースエディションで利用可能です;マージ自体をライブデータソースに対して実行することは、当ページの範囲外の別問題です。
ステップ 5: ドキュメント表示設定の構成
Document.ViewOptions(ViewOptions のインスタンス)は、Word がファイルを開いたときの表示方法を制御します: ViewType、ZoomType、ZoomPercent、DisplayBackgroundShape、DoNotDisplayPageBoundaries、および FormsDesign。これらのプロパティは保存された設定であり、Word のドキュメント表示にのみ影響し、Aspose.Words FOSS がそれを処理する方法には関係しません。
ステップ 6: 書き込み保護の適用
Document.WriteProtection(WriteProtection のインスタンス)は、IsWriteProtected と ReadOnlyRecommended を公開し、SetPassword() は保護パスワードを設定するために、ValidatePassword() は候補パスワードをそれと比較してチェックするために使用されます。IsWriteProtected = true を設定する前に SetPassword() を呼び出し、raw パスワード文字列を自分で保存または比較する代わりに ValidatePassword() を使用してください。
一般的な問題と対処法
CompatibilityOptions.OptimizeFor() throws NotImplementedException. このビルドではこのメソッドは実装されていません。個々の CompatibilityOptions 必要なブールプロパティを直接設定してください。
Changing ViewOptions.ZoomPercent 生成された出力に目に見える影響はありません。 ViewOptions Word が読み取る保存された表示設定であり、Aspose.Words FOSS 自体が処理中に適用するものではありません。修正は不要です — これは想定どおりの動作です。
WriteProtection.ValidatePassword() 予期せず返されます false. SetPassword() 呼び出されていないか、別のパスワードが設定されています。呼び出してください SetPassword() 検証する前に保護パスワードを設定するために、まず実行してください。
メール差し込みの設定は保存されますが、差し込みは実行されません。 MailMergeSettings and Odso 差し込み設定のみを保存します;このオープンソース版は差し込み自体を実行しません。保存された設定を読み取り、独自のフィールド入力ロジックを適用してください。
よくある質問
CompatibilityOptions.OptimizeFor() は動作しますか?
いいえ — このビルドでは NotImplementedException がスローされます。必要な個々の CompatibilityOptions プロパティを直接設定してください。
文書を編集からパスワードで保護するにはどうすればよいですか?
Document.WriteProtection に対して WriteProtection.SetPassword() を呼び出し、次に IsWriteProtected を設定して保護を有効にします。
Aspose.Words の FOSS が処理する際、 HyphenationOptions と ViewOptions は文書の外観を変えますか?
いいえ。両方とも Word がファイルを開いて表示する際に適用する保存された設定です。このエディションにはそれらに直接作用するページレイアウトエンジンがありません。
外部データソースの差し込み印刷データソース構成はどこで見つけられますか?
MailMergeSettings.Odso — その FieldMapDatas と RecipientDatas コレクションは列のマッピングと受信者の包含状態を示します。
Document.CompatibilityOptions と Document.ViewOptions の違いは何ですか?
CompatibilityOptions スイッチは、旧バージョンの Word のレイアウトや間隔の癖を再現します;ViewOptions は、Word のインターフェイスがファイルを表示する方法(ズーム、書式表示記号)を制御します。どちらも Aspose.Words FOSS 自体によって計算されるものではありません。