通过PHP COM转换为PDF文件时检测WORD文件中的错误

时间:2014-04-23 07:37:00

标签: php windows com ms-word rtf

我正在使用PHP的COM扩展名将Word文档(或RTF文件)转换为使用PHP的PDF文件。 这是我的示例代码:

<?php
$word = new COM("Word.Application") or die ("Could not initialise Object.");
$word->Visible = 0;
$word->DisplayAlerts = 0;  
$word->Documents->Open('C:\docs\test.rtf');  
$word->ActiveDocument->ExportAsFixedFormat('C:\docs\test.pdf', 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);
$word->Quit(false);
unset($word);
?>

但对于某些文档(已损坏或包含错误),转换不会发生,执行将持续到max_execution_time,并且除了空白屏幕外不会显示任何错误。

通常,当我在系统上打开相应的RTF文件时,它会显示如下警告:

enter image description here

我的问题是,我可以通过PHP代码识别RTF文件中是否有错误吗? (我可以在手动打开文件时找到它,并显示如上所示的警告框)

注意:当我在windows localhost中运行我的php代码时,我可以看到在我的任务管理器中创建了一个新任务,其名称为:&#39; Show Repairs &#39;当我切换到它时,它与上面的图像相同。当我杀了它时,php代码会立即将RTF转换为PDF文件。

0 个答案:

没有答案