La conversion de documents Word en aperçus d’images est un besoin fréquent lors de la création de portails web ou d’outils de reporting. Le Aspose.OMR Cloud SDK for PHP permet aux développeurs PHP de convertir de manière programmatique des DOCX en JPG en PHP avec une grande fidélité. Dans ce tutoriel, vous verrez un exemple complet en PHP, le flux de travail REST cURL équivalent, ainsi que tout ce qui est nécessaire pour préparer l’environnement. À la fin, vous disposerez d’une solution réutilisable qui peut être intégrée à n’importe quelle application PHP.

Exemple complet fonctionnel pour convertir DOCX en JPG en PHP en utilisant Aspose.OMR Cloud SDK

Cet exemple montre comment utiliser le Aspose.OMR Cloud SDK for PHP pour convertir un fichier DOCX en image JPG.

<?php
require __DIR__ . '/vendor/autoload.php';

use Aspose\OMR\Configuration;
use Aspose\OMR\Api\ConvertApi;
use Aspose\OMR\Model\ConvertDocumentRequest;
use Aspose\OMR\ApiException;

// -----------------------------------------------------------------------------
// Configuration – replace with your actual credentials
// -----------------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setApiKey('YOUR_API_KEY');

// -----------------------------------------------------------------------------
// Initialize the Convert API
// -----------------------------------------------------------------------------
$convertApi = new ConvertApi($config);

// -----------------------------------------------------------------------------
// File paths (adjust as needed)
// -----------------------------------------------------------------------------
$inputDocxPath  = __DIR__ . '/input.docx';
$outputJpgPath  = __DIR__ . '/output.jpg';

// -----------------------------------------------------------------------------
// Prepare request – stream the input file to avoid loading whole file into memory
// -----------------------------------------------------------------------------
$inputStream = fopen($inputDocxPath, 'rb');
if ($inputStream === false) {
    throw new RuntimeException("Unable to open input file: $inputDocxPath");
}

$request = new ConvertDocumentRequest();
$request->setFile($inputStream);          // Input DOCX stream
$request->setOutputFormat('jpg');         // Desired output format
$request->setOutputFileName('output.jpg'); // Optional: name for the generated file

try {
    // -------------------------------------------------------------------------
    // Perform conversion
    // -------------------------------------------------------------------------
    $responseStream = $convertApi->convertDocument($request);

// -------------------------------------------------------------------------
    // Write the resulting JPG to disk using a buffered copy (efficient for large files)
    // -------------------------------------------------------------------------
    $outputHandle = fopen($outputJpgPath, 'wb');
    if ($outputHandle === false) {
        throw new RuntimeException("Unable to open output file: $outputJpgPath");
    }

while (!feof($responseStream)) {
        $buffer = fread($responseStream, 8192);
        if ($buffer === false) {
            throw new RuntimeException('Error reading from response stream.');
        }
        fwrite($outputHandle, $buffer);
    }

fclose($outputHandle);
    fclose($inputStream);
    fclose($responseStream);

echo "Conversion successful. JPG saved to: $outputJpgPath\n";
} catch (ApiException $e) {
    // -------------------------------------------------------------------------
    // Handle API errors (e.g., authentication, unsupported format)
    // -------------------------------------------------------------------------
    fclose($inputStream);
    echo 'API Exception: ', $e->getMessage(), PHP_EOL;
    exit(1);
} catch (Exception $e) {
    // -------------------------------------------------------------------------
    // General error handling
    // -------------------------------------------------------------------------
    if (is_resource($inputStream)) {
        fclose($inputStream);
    }
    echo 'Error: ', $e->getMessage(), PHP_EOL;
    exit(1);
}

Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour tous les chemins de fichiers et les valeurs de configuration pour qu’ils correspondent à votre environnement réel, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.

Conversion de DOCX en JPG via l’API REST avec cURL

Si vous préférez une approche REST pure, la même conversion peut être effectuée avec quelques commandes cURL.

  1. Obtenir un jeton d’accès - remplacez les espaces réservés par vos informations d’identification client.
curl -X POST "https://api.aspose.cloud/connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. Télécharger le fichier DOCX - utilisez le jeton de l’étape précédente.
curl -X PUT "https://api.aspose.cloud/v4.0/omr/storage/file/input.docx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document" \
  --data-binary "@input.docx"
  1. Demander la conversion en JPG
curl -X POST "https://api.aspose.cloud/v4.0/omr/convert" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
        "FileName": "input.docx",
        "OutputFormat": "jpg",
        "OutputFileName": "output.jpg"
      }' -o response.json
  1. Télécharger le JPG généré.
curl -X GET "https://api.aspose.cloud/v4.0/omr/storage/file/output.jpg" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -o output.jpg

Pour une référence complète, consultez la documentation officielle de l’API.

Décomposer la conversion DOCX en JPG en PHP avec Aspose.OMR Cloud SDK

La répartition numérotée suivante explique chaque partie du code PHP qui effectue la conversion de DOCX en JPG dans le flux de travail PHP.

  1. Configuration - La classe Configuration contient votre AppSid et votre ApiKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setApiKey('YOUR_API_KEY');
  1. Initialisation de l’API - Une instance de ConvertApi est créée avec la configuration.
$convertApi = new ConvertApi($config);
  1. Préparation du flux d’entrée - Le fichier DOCX est ouvert en tant que flux binaire afin d’éviter de charger le fichier entier en mémoire.
$inputStream = fopen($inputDocxPath, 'rb');
  1. Construction de la requête - ConvertDocumentRequest spécifie le flux d’entrée, le format de sortie souhaité (jpg) et un nom de fichier de sortie optionnel.
$request = new ConvertDocumentRequest();
$request->setFile($inputStream);
$request->setOutputFormat('jpg');
$request->setOutputFileName('output.jpg');
  1. Exécution de la conversion et enregistrement du résultat - convertDocument renvoie un flux de réponse qui est écrit dans output.jpg à l’aide d’une copie tamponnée.
$responseStream = $convertApi->convertDocument($request);
$outputHandle = fopen($outputJpgPath, 'wb');
while (!feof($responseStream)) {
    $buffer = fread($responseStream, 8192);
    fwrite($outputHandle, $buffer);
}

Pour plus de détails sur la classe ConvertApi, consultez la référence API.

Préparer l’environnement pour Aspose.OMR Cloud SDK en PHP

  1. Installez le SDK via Composer
composer require aspose/aspose-omr-cloud

Le package peut également être téléchargé depuis la page de publication.

  1. Vérifier la version PHP - Le SDK nécessite PHP 7.2 ou une version ultérieure.

  2. Configurer les informations d’identification - Remplacez YOUR_APP_SID et YOUR_API_KEY dans le code par les valeurs de votre compte Aspose Cloud.

  3. Chargement automatique des dépendances - Le fichier vendor/autoload.php généré par Composer charge toutes les classes requises.

Avec ces étapes terminées, vous êtes prêt à convertir DOCX en JPG en PHP en utilisant le Aspose.OMR Cloud SDK.

Conclusion

Vous savez maintenant comment convertir DOCX en JPG en PHP de manière efficace avec le Aspose.OMR Cloud SDK. L’exemple de code fourni, le flux de travail REST cURL et les instructions d’installation vous offrent une solution complète, prête pour la production, qui peut être intégrée à n’importe quel projet PHP, y compris les applications Laravel. Pour une utilisation commerciale, achetez une licence sur la page produit Aspose.OMR Cloud SDK for PHP ; une licence temporaire est également disponible via la page de licence temporaire. Commencez dès aujourd’hui à convertir vos documents Word en images JPG de haute qualité.

FAQs

Comment puis‑je convertir un DOCX en JPG en PHP ?
Utilisez le Aspose.OMR Cloud SDK for PHP. Après avoir installé le SDK et configuré vos identifiants, l’exemple de code PHP ci‑dessus montre les étapes exactes pour convertir un fichier DOCX en image JPG.

Est-il possible de convertir DOCX en JPG avec Laravel en PHP ?
Oui. Le SDK fonctionne avec n’importe quel framework PHP, y compris Laravel. Placez la logique de conversion dans un contrôleur ou une classe de service et appelez‑la depuis vos routes.

Quelle est la meilleure façon de convertir DOCX en JPG haute résolution en PHP ?
Ajustez les paramètres de résolution de sortie (si pris en charge) dans la requête de conversion. Le SDK vous permet de spécifier les paramètres DPI dans le corps de la requête pour une sortie JPG de meilleure qualité.

Puis-je convertir plusieurs DOCX en JPG en PHP avec un seul script ?
Absolument. Parcourez un tableau de chemins de fichiers DOCX, réutilisez la même instance ConvertApi et appelez convertDocument pour chaque fichier. Cette approche se dimensionne bien pour le traitement par lots.

En savoir plus