我正在使用 Matlab 编写代码,该代码执行一些计算并以 .doc 格式写出带有表格和结果的报告。我想将生成的 .doc 报告另存为 PDF 或不可编辑的 word 格式,以便报告未经编辑。我正在使用该WritetoWordFromMatlab()功能来写出文件。
我正在寻找一个actxserver可以将我的文件保存为 PDF 的命令。有没有办法做到这一点?
我正在使用 Matlab 编写代码,该代码执行一些计算并以 .doc 格式写出带有表格和结果的报告。我想将生成的 .doc 报告另存为 PDF 或不可编辑的 word 格式,以便报告未经编辑。我正在使用该WritetoWordFromMatlab()功能来写出文件。
我正在寻找一个actxserver可以将我的文件保存为 PDF 的命令。有没有办法做到这一点?
在 Office 2007 或 2010 中,您可以使用方法,作为参数Document.ExportAsFixedFormat传递。在 Matlab 中使用 Word 启动,让它打开你的 .doc 文件,然后用 .pdf 写出 .pdf 。或摆弄直接将其保存为PDF。wdExportFormatPDFExportFormatactxserverExportAsFixedFormatwritetowordfrommatlab
这是有关文档:http ExportAsFixedFormat: //msdn.microsoft.com/en-us/library/bb256835%28v=office.12%29.aspx。
这是一个示例:
filename = fullfile(pwd, 'myfile.docx');
pdf_filename = fullfile(pwd, 'myfile.pdf');
% Create COM server
actx_word = actxserver('Word.Application');
actx_word.Visible = true;
% Open existing document
word_handle = invoke(actx_word.Documents,'Open',filename);
% Save as PDF
invoke(word_handle,'ExportAsFixedFormat',pdf_filename,'wdExportFormatPDF');
% Close the window
invoke(word_handle,'Close');
% Quit Word
invoke(actx_word,'Quit');
% Close Word and terminate ActiveX
delete(actx_word);