Maison >développement back-end >Problème PHP >Comment convertir des fichiers doc en fichiers pdf en php

Comment convertir des fichiers doc en fichiers pdf en php

王林
王林original
2020-09-28 09:48:104203parcourir

Comment convertir des fichiers doc en fichiers pdf en php : 1. Modifiez le fichier php.ini et ajoutez [extension=php_com_dotnet.dll] ; 2. Configurez le service du composant Office ; 3. Utilisez la fonction ExportAsFixedFormat ; convertir le fichier .

Comment convertir des fichiers doc en fichiers pdf en php

Méthode spécifique :

(Tutoriel recommandé : Tutoriel vidéo php)

1. php.ini

  • Ajouter : extension=php_com_dotnet.dll

  • Supprimer le commentaire : com.allow_dcom = true

  • Redémarrez l'environnement

2. Configurez le support bureautique

  • Installez la suite Microsoft Office. (Office 2007 nécessite l'installation manuelle de Microsoft Enregistrer au format PDF et ] —— [Ordinateur] —— [Poste de travail] —— [Configuration DCOM] —— [Document Microsoft Wrord 97-2003] Cliquez avec le bouton droit sur [Microsoft Wrord 97-2003 Document] et définissez les propriétés [Identité] sur [Utilisateur interactif]

  • Implémentation du code :

    /**
     * @desc   xmsb_wordToPdf         将word转换为pdf
     * @param  string    $wordPath    word原文件路径
     * @param  string    $outPath     pdf输出路径
     * @return string
     */
    function xmsb_wordToPdf($wordPath, $outPath)
    {
        // 原文件不存在则返回错误
        if(!file_exists($wordPath)) 
        {
            return 'word原文件不存在';
        }
        
        // 输出目录不存在则创建目录
        if(!file_exists($tmpPath = rtrim($outPath, basename($outPath))))
        {
            mkdir($tmpPath, 0777, true);
        }
        
        $filenamedoc = dirname(__FILE__)."/".$wordPath;
        $filenamepdf = dirname(__FILE__)."/".$outPath;
        
        // 删除已有同名文件
        if(file_exists($filenamepdf)) 
        {
            unlink($filenamepdf);
        }
        
        // 执行转换操作
        $word = new COM("word.Application") or die("Could not initialise Object");
        $word->Documents->Open($filenamedoc);
        $word->ActiveDocument->ExportAsFixedFormat($filenamepdf, 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);
        $word->Quit(false);
        unset($word);
        
        // 在页面中显示生成的pdf
        // header('Content-type: application/pdf');
        // header('filename='.$filenamepdf);
        // readfile($filenamepdf);
        
        return '转换成功';
    }
    
    // 测试运行
    echo xmsb_wordToPdf('./word/word1.docx', './pdf/output1.pdf');

    Recommandations associées :

    Formation php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn