チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル».NET»Spire.Doc for .NET»変換»C#:Word ドキュメントを TIFF に変換する方法
2024-07-04

C#:Word ドキュメントを TIFF に変換する方法

Word ドキュメントを TIFF に変換することは、さまざまなシナリオで役立ちます。TIFF ファイルは高品質で広くサポートされており、ドキュメントを共有するのに便利です。変換により Word ドキュメントが「フラット化」され、レイアウトが元のまま正確に保存されます。これにより、画像ベースのファイルが必要な他のアプリケーションやワークフローにドキュメントを組み込む際に役立ちます。

この記事では、C# と Spire.Doc for .NET ライブラリを使用して Word を TIFF に変換する方法を学びます。

Spire.Doc for .NET をインストールします

まず、Spire.Doc for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.Doc

C# で Word を TIFF に変換する方法

Spire.Doc for .NET は、ドキュメント全体を画像の配列に変換するための Document.SaveToImages() メソッドを提供しています。その後、これらの個々の画像を組み合わせて単一の TIFF 画像にすることができます。

C# を使用して Word を TIFF に変換する手順は次のとおりです。

  • Document クラスのオブジェクトを作成します。
  • Document.LoadFile() メソッドを使用して Word ドキュメントを読み込みます。
  • Document.SaveToImages() メソッドを使用してドキュメントを画像の配列に変換します。
  • これらの画像をカスタムメソッド ConvertImagesToTiff() を使用して単一の TIFF ファイルに結合します。
  • C#
using Spire.Doc;
using Spire.Doc.Documents;
using System.Drawing;
using System.Drawing.Imaging;

namespace WordToTiff
{
    class Program
    {
        static void Main(string[] args)
        {
            // Documentオブジェクトを作成する
            Document doc = new Document();

            // Word文書を読み込む
            doc.LoadFromFile("G:/Documents/Sample20.docx");

            // 文書全体を画像に変換する
            Image[] images = doc.SaveToImages(ImageType.Bitmap);

            // 複数の画像をTIFFファイルに変換する
            ConvertImagesToTiff(images, "WordをTiffに変換.tiff", EncoderValue.CompressionLZW);

            // リソースを解放する
            doc.Dispose();
        }

        private static ImageCodecInfo GetEncoderInfo(string mimeType)
        {
            // 画像エンコーダを取得する
            ImageCodecInfo[] encoders = ImageCodecInfo.GetImageEncoders();
            for (int j = 0; j < encoders.Length; j++)
            {
                // 指定されたMIMEタイプに一致するエンコーダを見つける
                if (encoders[j].MimeType == mimeType)
                    return encoders[j];
            }
            throw new Exception(mimeType + " mime type not found in ImageCodecInfo");
        }

        public static void ConvertImagesToTiff(Image[] images, string outFile, EncoderValue compressEncoder)
        {
            // エンコーダパラメータを設定する
            Encoder enc = Encoder.SaveFlag;
            EncoderParameters ep = new EncoderParameters(2);
            ep.Param[0] = new EncoderParameter(enc, (long)EncoderValue.MultiFrame);
            ep.Param[1] = new EncoderParameter(Encoder.Compression, (long)compressEncoder);

            // 最初の画像を取得する
            Image pages = images[0];

            // 変数を作成する
            int frame = 0;

            // TIFF画像コーデック情報を処理するためのImageCodecInfoオブジェクトを取得する
            ImageCodecInfo info = GetEncoderInfo("image/tiff");

            // 各画像を反復処理する
            foreach (Image img in images)
            {
                // 最初のフレームの場合、指定されたエンコーダパラメータで出力ファイルに保存する
                if (frame == 0)
                {
                    pages = img;
                    pages.Save(outFile, info, ep);
                }
                else
                {
                    // 中間フレームを保存する
                    ep.Param[0] = new EncoderParameter(enc, (long)EncoderValue.FrameDimensionPage);

                    pages.SaveAdd(img, ep);
                }

                // 最後のフレームの場合、エンコーダパラメータをフラッシュし、ファイルを閉じる
                if (frame == images.Length - 1)
                {
                    ep.Param[0] = new EncoderParameter(enc, (long)EncoderValue.Flush);
                    pages.SaveAdd(ep);
                }
                frame++;
            }
        }
    }
}

C#:Word ドキュメントを TIFF に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 307 times