Word ドキュメントを .NET でエクスポートおよび保存する方法
このガイドでは、Aspose.Words FOSS for .NET を使用して Word 文書をエクスポートおよび保存する方法を示します:推測された形式または明示的な形式での保存、OOXML 保存オプションの構成、Markdown へのエクスポート、プレーンテキストへのエクスポート、変換前にファイル形式を検出する方法。Aspose.Words FOSS for .NET は、NuGet から、またはソースからビルドすることで入手可能です。
ステップバイステップガイド
ステップ 1: ライブラリを取得する
リポジトリをクローンしてビルドする Aspose.Words.sln Release 構成で、次にプロジェクト参照を追加します Aspose.Words.csproj 独自の .NET プロジェクトから、以下に記載された通りに インストール ガイド. 追加 using Aspose.Words; 任意のドキュメントを保存するファイルの先頭に記述します。
ステップ 2: 推測された形式または明示的な形式で保存する
Document.Save(fileName) はファイルの拡張子から対象フォーマットを推測します。Save(fileName, saveFormat) は拡張子に関係なく SaveFormat 列挙型の値を受け取ることでフォーマットを明示的に指定します。また、Save(fileName, saveOptions)(または対応する Stream オーバーロード)は、フォーマット固有の制御のために SaveOptions のサブクラスを受け取ります。SaveOptions.CreateSaveOptions(saveFormat) は静的ファクトリで、指定された SaveFormat に対してデフォルトが設定された適切なオプションサブクラスを返します。このエディションは、DOCX、DOCM、DOTX、DOTM、Flat OPC(マクロ有効版およびテンプレート版を含む)への相互保存を完全にサポートし、Markdown およびプレーンテキストにも対応しています。
ステップ 3: OOXML エクスポートオプションを構成する
OoxmlSaveOptions は Open XML のさまざまなバリアントへの保存を構成します。その SaveFormat プロパティは DOCX、DOCM、DOTX、DOTM、または Flat OPC を明示的に選択します;Password は保存されたファイルにオープンパスワードを設定し、Document.Protect の編集制限とは独立しています;Compliance は OOXML の厳格性レベルを選択します;そして CompressionLevel / Zip64Mode は基礎となる ZIP パッケージングを制御します。new OoxmlSaveOptions(saveFormat) で作成するか、SaveOptions.CreateSaveOptions(saveFormat) を使用してください。
ステップ 4: Markdown へエクスポート
MarkdownSaveOptions は Markdown エクスポートを制御します:ListExportMode と LinkExportMode はリストとハイパーリンクのレンダリング方法を決定し、ImagesFolder / ImagesFolderAlias は抽出された画像の保存先と参照方法を制御し、ExportImagesAsBase64 は画像を別ファイルとして書き出す代わりにインラインで埋め込み、TableContentAlignment は生成されるテーブルのマークアップに影響を与えます。MarkdownSaveOptions インスタンスを Document.Save(fileName, saveOptions) に渡し、.md ファイル名を指定するか、SaveFormat を明示的に設定してください。
ステップ 5: プレーンテキストへエクスポート
TxtSaveOptions(その共有ベース TxtSaveOptionsBase を通じて、MarkdownSaveOptions でも使用されます)はプレーンテキストのエクスポートを制御します:Encoding は文字エンコーディングを設定し、ParagraphBreak は改行文字列を設定し、MaxCharactersPerLine は長い行を折り返し、SimplifyListLabels はリストの箇条書きや番号をプレーン文字に正規化し、PreserveTableLayout はスペースを使用してテーブル列を揃えます。
ステップ 6: 変換前にフォーマットを検出する
未知のフォーマットのファイルを変換する前に、FileFormatUtil.DetectFileFormat(fileName) は検出された LoadFormat を含む FileFormatInfo を返します。FileFormatUtil.LoadFormatToSaveFormat(loadFormat) と組み合わせて、そのフォーマットがこのエディションでサポートされているフォーマットを経由してラウンドトリップできるかを確認してから Document.Save を呼び出してください。いくつかの SaveFormat 列挙メンバーは API の完全性のために存在しますが、この縮小されたオープンソースエディションでは実装されたリーダーやライターはありません。信頼できる出力のためには、DOCX/DOCM/DOTX/DOTM/Flat OPC ファミリーと Markdown、プレーンテキストに限定してください。
一般的な問題と対策
Save(fileName) 誤った形式で書き込みます。 ファイル拡張子が目的の形式と一致しません。使用してください Save(fileName, saveFormat) or Save(fileName, saveOptions) 拡張子に依存せず、フォーマットを明示的に指定するために。
保存した OOXML ファイルはパスワードで開くことができません。 OoxmlSaveOptions.Password 保存前に設定されていませんでした。構築してください OoxmlSaveOptions、設定 Password、それを渡す Save.
Markdown エクスポートが画像ファイルを予期せず散在させます。 Default MarkdownSaveOptions 動作が画像を個別のファイルに抽出します。設定してください ExportImagesAsBase64 = true 単一の自己完結型 Markdown ファイル用に、または設定してください ImagesFolder 画像の配置場所を制御するために。
プレーンテキストへのエクスポートでは、テーブルの列揃えが失われます。 TxtSaveOptions.PreserveTableLayout はデフォルトのままです。設定 PreserveTableLayout = true 保存する前に。
よくある質問
ファイル拡張子に関係なく、特定の形式で保存するにはどうすればよいですか?
明示的な SaveFormat 値を指定して Save(fileName, saveFormat) を呼び出すか、または一致する SaveOptions サブクラスを使用して Save(fileName, saveOptions) を呼び出します。
このエディションで双方向にラウンドトリップできるフォーマットはどれですか?
DOCX、DOCM、DOTX、DOTM、Flat OPC(マクロ有効版およびテンプレート版を含む)、Markdown、そしてプレーンテキスト。
保存したファイルをパスワードで保護し、開くことすらできないようにするにはどうすればよいですか?
OoxmlSaveOptions インスタンスに Password を設定し、Document.Save(fileName, saveOptions) に渡します。
エクスポートされたテキストファイルの改行コードを制御するにはどうすればよいですか?
保存する前に、TxtSaveOptions インスタンスに ParagraphBreak を設定します。
ファイルを変換する前にそのフォーマットを確認するにはどうすればよいですか?
FileFormatUtil.DetectFileFormat(fileName) を呼び出し、返された FileFormatInfo.LoadFormat を読み取ります。