Word 2007またはWord 2010のPDFエクスポート機能を使用して、docまたはdocxをpdfに変換するコードを誰も書いていましたか?WordのActiveXを使用してデルファイに変換するdoc
答えて
私は以下の.vbsスクリプトを使用しています。あなたはDelphiのコードでそれを必要とする場合、変換するのは簡単だろう:
Const wdDoNotSaveChanges = 0
Const wdRevisionsViewFinal = 0
Const wdFormatPDF = 17
Dim arguments
Set arguments = WScript.Arguments
Function DOC2PDF(sDocFile)
Dim fso ' As FileSystemObject
Dim wdo ' As Word.Application
Dim wdoc ' As Word.Document
Dim wdocs ' As Word.Documents
Set fso = CreateObject("Scripting.FileSystemObject")
sDocFile = fso.GetAbsolutePathName(sDocFile)
sPdfFile = fso.GetParentFolderName(sDocFile) + "\" + fso.GetBaseName(sDocFile) + ".pdf"
Set wdo = CreateObject("Word.Application")
Set wdocs = wdo.Documents
WScript.Echo "Opening: " + sDocFile
Set wdoc = wdocs.Open(sDocFile)
if fso.FileExists(sPdfFile) Then
fso.DeleteFile sPdfFile, True
End If
WScript.Echo "Converting to PDF: " + sPdfFile
Set wview = wdoc.ActiveWindow.View
wview.ShowRevisionsAndComments = False
wview.RevisionsView = wdRevisionsViewFinal
wdoc.SaveAs sPdfFile, wdFormatPDF
WScript.Echo "Conversion completed"
wdo.Quit wdDoNotSaveChanges
Set fso = Nothing
Set wdo = Nothing
End Function
If arguments.Count=1 Then
Call DOC2PDF(arguments.Unnamed.Item(0))
Else
WScript.Echo "Generates a PDF file from a Word document using Word PDF export."
WScript.Echo ""
WScript.Echo "Usage: doc2pdf.vbs <doc-file>"
WScript.Echo ""
End If
私がこれまで持っていないが、それは難しいことではありません。
- は、Word COMサーバーオブジェクトを作成します。
CreateOLEObject
('Word.Application')
- オープン
ExportAsFixedFormat
Documents.Open
はここで基本骨格です:
uses
ComObj;
const
wdExportFormatPDF = 17;
var
Word, Doc: OleVariant;
begin
Word := CreateOLEObject('Word.Application');
Doc := Word.Documents.Open('C:\Document.docx');
Doc.ExportAsFixedFormat('C:\Document.pdf', wdExportFormatPDF);
end;
注バージョンindepentとなるように、私は、OLEVariantといったようWord
とDoc
変数の両方を宣言しました(すなわち、このコードは、Word 2007または2010を使用している場合でも機能します)。必要に応じて、VCL Officeコンポーネントライブラリを使用することもできます。ドキュメント自体で多くの処理を行うなら、間違いなく速くなるでしょう。
これは機能します(OleAutoは廃止されているので、私はComObjに置き換えました)。 VCLのOfficeコンポーネントライブラリの場所を教えてください:Delphi 7パレットで見たことがあるのを覚えていますが、2009年には表示されません。 – LaBracca
@ user193655:私はそれが別のオプションであることを覚えているようです。インストーラが、私は確信することはできません。私はD2010のセットアップでそれらを手に入れていませんでした(しかし、私はほとんどの場合、いつもバリアントを使用していますので、柔軟性が増します - 私はVBAのオブジェクトブラウザを使ってオブジェクトや使用方法を見つけ出します) – Martijn
- 1. Pythonを使用して.docを.htmlに変換する
- 2. .NET Microsoft.Office.Interopを使用して.DOCをXHTMLに変換する
- 3. word docをpdfファイルに変更する
- 4. OpenOffice.orgの基本マクロを使用して* .odtファイルをMS Word * .docファイルにプログラムで変換します
- 5. カスタムドキュメントライブラリDispForm.aspxを使用してWordで.docを編集するDispForm.aspx
- 6. Javaを使用してWord文書をPDFに変換する
- 7. ヘッドレスを使用してDocxをDocに変換
- 8. Office Wordを使用してPHPでdocファイルを読む
- 9. バイトをdocファイルに変換し、C#を使用してダウンロードする方法
- 10. Wordのjavascript APIを使用してリッチテキスト形式(.rtf)のファイルコンテンツをword docに挿入する方法
- 11. Pythonを使用して.docを純粋なテキストに変換する
- 12. WordでActiveXコンポーネント名のプロパティを動的に変更する
- 13. doc&docxをPDF形式に変換するポートでサービスとしてWord 2010を実行しますか?
- 14. rubyを使用してdocxからword式への変換式
- 15. C#を使用してword docのテーブルから値を読み取る方法
- 16. VBマクロでGREP式を使用してWord Docで検索する
- 17. C構造をデルファイに変換する
- 18. DOCXをRubyのDOCに変換する
- 19. プログラミングを使用してdocをps形式に変換したい
- 20. Apache FOPを使用してWord 2007文書をPDFに変換する方法
- 21. Acrobat SDKを使用してPDFをWordに変換する方法は?
- 22. Asp.Netを使用してPS(Post Sctipt)ファイルをWordに変換する
- 23. PHPWordを使用してWord文書をPDFに変換する方法
- 24. MS Word VBAを使用してWord文書の入れ子リストをHTML入れ子リストに変換する
- 25. docファイルをPDFに変換
- 26. サーバー上にword docを作成して保存する
- 27. Wordオートメーションを使用せずにWord 2003をWord 2007に一括変換しますか?
- 28. docをhtmlとpdfに変換する
- 29. .doc/docxをHtmlに変換する
- 30. docをpdf形式に変換する#
私は多くの助けになった 'wdDoNotSaveChanges'を含んでいるので、これを答えとして選択します!私は1日失ったし、再びこの質問を読んだ!その言葉を使わずに節約を求めると非常に迷惑です。 – LaBracca