ホームページ  >  記事  >  バックエンド開発  >  C#でWordをPDFに変換する方法まとめ

C#でWordをPDFに変換する方法まとめ

黄舟
黄舟オリジナル
2017-05-28 10:02:453021ブラウズ

この記事では、主に Word を PDF に変換する C# 方法、Office と WPS に基づく 2 つのソリューションをまとめています。興味のある友人は参考にしてください

場合によっては、Word ドキュメントをプレビューする必要があります。もちろん、NPOI を使用して Word のテキストとを抽出し、Web ページに表示することもできますが、これにより Word の元の形式と画像が失われます。より良い方法は、Word を PDF に変換し、顧客がそれをプレビューできるようにすることです。Office と WPS に基づく 2 つのソリューションを見てみましょう。

1. Office ベースのソリューション

タイトルのとおり、Office ベースのソリューションでは、サーバーに Office をインストールする必要があります。 C# コードを通じて COMインターフェイスを呼び出し、Word を PDF に変換します。具体的な実装を見てみましょう。まず、 Microsoft.Office.Interop.Word.dll を引用し、次のコードを記述します。

public bool WordToPDF(string sourcePath, string targetPath)
    {
      bool result = false;
      Microsoft.Office.Interop.Word.Application application = new Microsoft.Office.Interop.Word.Application();
      Document document = null;
      try
      {
       application.Visible = false;
       document = application.Documents.Open(sourcePath);
       document.ExportAsFixedFormat(targetPath, WdExportFormat.wdExportFormatPDF);
       result = true;
      }
      catch (Exception e)
      {
       Console.WriteLine(e.Message);
       result = false;
      }
      finally
      {
       document.Close();
      }
      return result;
    }

2. WPS ベースのソリューション

WPS のメリットはもちろん無料、そして小規模です。もちろん、Word を PDF に変換するには、サーバーに WPS がインストールされている必要があります。COM インターフェイスを呼び出して、次のコードを記述します。

public bool WordToPdfWithWPS(string sourcePath, string targetPath)
    {
      WPS.ApplicationClass app = new WPS.ApplicationClass();
      WPS.Document doc = null;
      try
      {
       doc = app.Documents.Open(sourcePath, true, true, false, null, null, false, "", null, 100, 0, true, true, 0, true);
       doc.ExportPdf(targetPath, "", "");
      }
      catch (Exception ex)
      {
       Console.WriteLine(ex.Message);
       return false;
      }
      finally
      {
       doc.Close();
      }
      return true;
    }

3. エンタープライズ レベルのソリューション

大企業向け。たとえば、多くの場合、複数のサーバーがあり、各サーバーに Office や WPS をインストールすることは不可能です。あるいは、企業は単にこれらの無用なソフトウェアをサーバーにインストールしたくないだけです。この時、私たちは何をすべきでしょうか?結局のところ、これらのソフトウェアをサーバーにインストールするのはリソースの無駄です。

もちろん、機能はまだ実装する必要がありますが、それをどう解決するか?実際、サーバーに office または WPS ソフトウェアをインストールし、WCF サービスやリモート処理などの Web サービスを展開すると、他のサーバーがこのサービスを呼び出して Word を PDF に変換できます。

以上がC#でWordをPDFに変換する方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。