4

PDFにする必要がある約200ワードの文書があります。

明らかに、それらを 1 つずつ pdf することはできません。まず、時間がかかります。次に、そうするのは良い習慣ではないと確信しています。

この変換を何度も行う必要があるため、その変換を自動化する方法を見つける必要があります。

私は C# を使用していますが、ソリューションは必ずしも C# である必要はありませんが、推奨されます。

PDfCreator、Office 2007 アドイン、ITextSharp などのいくつかのライブラリを見てきましたが、フォーラムには明確な回答がありません。

PDFCreator には C# のサンプルがありますが、txt ファイルでしか機能しません。Office 2007 アドインには、自動化に必要なドキュメント ロック機能がありません。

誰かがそのようなシナリオを以前に実装したことがありますか? あなたの提案を聞いてほしいです。

前もって感謝します

よろしく

4

7 に答える 7

3

このブログ投稿の方法を試すことができます。

http://angrez.blogspot.com/2007/06/create-pdf-in-net-using-pdfcreator.html

于 2011-02-17T14:53:29.590 に答える
2

このMSDN の記事を確認しましたか?


編集:

次の理由により、この「ハウツー」サンプルはそのままでは機能しないことに注意してください。

  1. 何らかの理由で、ConvertDocCS.exe [sourceDoc] [targetDoc] [targetFormat]77 行目、81 行目、82 行目のプログラム パラメーター ( ) を超えて実行されます。
  2. プロジェクトを VS 2010 に変換し、再参照する必要がありましたMicrosoft.Office.Core。というCOMリファレンスMicrosoft Office 12.0 Object Libraryです。
  3. サンプルは相対パスを除外していません。

私はあなたがそれらの障害を克服することができると確信しています:)


最後に一つだけ。Missing.Value.NET 4 を使用している場合は、オプションのパラメーターの驚異のおかげで、煩わしいものをすべて送信する必要はありません。

于 2011-02-17T14:58:34.467 に答える
1

Aspose.Words for .NETを試して、DOC ファイルを PDF に変換できます。他の .NET アセンブリと同様に、C# または VB.NET を使用する任意の .NET アプリケーションで使用できます。また、すべての Windows OS および 32/64 ビット システムで動作します。

開示: 私は Aspose で開発者エバンジェリストとして働いています。

于 2011-08-10T08:20:27.487 に答える
0

ワードオートメーション用のフォントを設定できます。同じアプリケーションのソリューションから生成されたすべてのドキュメントに単一のフォントを適用し、時間を節約して各テンプレートに手動で移動し、各タグと見出しなどに個別にフォントを設定しました...

 using (WordprocessingDocument wordProcessingDocument = WordprocessingDocument.Open(input, true))
                {
                    // Get all content control elements
                    List<DocumentFormat.OpenXml.OpenXmlElement> elements =
                        wordProcessingDocument.MainDocumentPart.Document.Body.ToList();
                    // Get and set the style properties of each content control
                    foreach (var itm in elements)
                    {
                        try
                        {
                            List<RunProperties> list_runProperties = 
                                  itm.Descendants<RunProperties>().ToList();
                            foreach (var item in list_runProperties)
                            {
                                if (item.RunFonts == null)
                                    item.RunFonts = new RunFonts();

                                item.RunFonts.Ascii = "Courier New";
                                item.RunFonts.ComplexScript = "Courier New";
                                item.RunFonts.HighAnsi = "Courier New";
                                item.RunFonts.Hint = FontTypeHintValues.ComplexScript;
                            }
                        }
                        catch (Exception)
                        {
                            //continue for other tags in document 
                            //throw;
                        }
                    }
                    wordProcessingDocument.MainDocumentPart.Document.Save();
                }
于 2013-04-09T08:05:42.133 に答える
0

HuBeZa が言ったように、Word がワークステーションにインストールされている場合、Word Automation を使用してファイルを 1 つずつ開き、PDF として保存できます。必要なのは、COM コンポーネント "Microsoft Word Object Library" を参照して、このアセンブリのクラスを操作することだけです。

実行時間はおそらく少し長くなりますが、変換は自動化されます。

于 2011-02-17T15:04:45.590 に答える
-2

これに対する率直な答えはノーだと思います!!! しかし、私が提案する回避策は、imagemagikまたはいくつかのライブラリを使用して、Word docの画像を提供できるかどうかを確認し、これらの画像をitextsharpで使用してpdfを作成することです。

于 2011-02-17T15:01:46.807 に答える