Convertissez des e-mails en PDF à l'aide de l'API REST en PHP.

Dans certains cas, nous pouvons avoir besoin de convertir nos e-mails et messages Outlook en documents PDF. Une telle conversion nous permet de conserver une trace des e-mails importants ou de les partager sous une forme portable. Nous pouvons également convertir les documents joints aux e-mails en documents PDF par programmation. Dans cet article, nous allons apprendre à convertir des e-mails et des fichiers MSG en documents PDF à l’aide d’une API REST en PHP.

Les sujets suivants seront traités dans cet article :

API REST de conversion d’e-mail en PDF et SDK PHP

Pour convertir les fichiers EML et MSG en documents PDF, nous utiliserons l’API PHP SDK of GroupDocs.Conversion Cloud. Il nous permet de convertir de manière transparente des documents et des images de n’importe quel format de fichier pris en charge vers n’importe quel format dont nous avons besoin. Veuillez l’installer à l’aide de la commande suivante dans la console :

composer require groupdocscloud/groupdocs-conversion-cloud

Après l’installation, veuillez utiliser autoload des compositeurs pour utiliser le SDK comme indiqué ci-dessous :

require_once('vendor/autoload.php'); 

Veuillez obtenir votre ID client et votre secret à partir du tableau de bord avant de suivre les étapes mentionnées. Une fois que vous avez votre identifiant et votre secret, ajoutez le code comme indiqué ci-dessous :

// L'exemple de code suivant montre comment ajouter l'ID client et le secret dans le code
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';

static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';

Convertir des e-mails en PDF à l’aide d’une API REST en PHP

Nous pouvons facilement convertir des e-mails en documents PDF par programme sur le cloud en suivant les étapes simples indiquées ci-dessous :

  1. Télécharger le fichier EML dans le cloud
  2. Convertir EML en PDF
  3. Télécharger le fichier PDF converti

Téléchargez le fichier EML

Tout d’abord, nous allons télécharger le fichier EML dans le cloud à l’aide de l’exemple de code suivant :

// Cet exemple de code montre comment télécharger un fichier EML dans le cloud.
// Définition des configurations
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Initialiser l'API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);

$file = "C:\\Files\\Conversion\\email\\sample.eml";
$request = new GroupDocs\Conversion\Model\Requests\UploadFileRequest("sample.eml", $file, self::$MyStorage, null);
$response = $apiInstance->uploadFile($request);

Par conséquent, le fichier téléchargé sera disponible dans la section des fichiers du tableau de bord sur le cloud.

Convertir EML en PDF en PHP

Maintenant, nous allons convertir les e-mails du fichier EML téléchargé en un document PDF en suivant les étapes ci-dessous :

  • Tout d’abord, créez une instance de ConvertApi.
  • Ensuite, indiquez le chemin du fichier EML téléchargé, le format de conversion et le chemin du fichier de sortie.
  • Ensuite, définissez diverses EmlLoadOptions telles que setDisplayHeader, setDisplayEmailAddress, etc.
  • En option, définissez diverses PdfConvertOptions telles que setCenterWindow, setMarginTop, setMarginLeft, etc.
  • Après cela, créez ConvertDocumentRequest avec ConvertSettings comme argument.
  • Enfin, convertissez EML en utilisant la méthode convertDocument() avec ConvertDocumentRequest.

L’exemple de code suivant montre comment convertir un fichier EML en document PDF à l’aide d’une API REST en PHP.

// Cet exemple de code montre comment convertir EML en PDF en PHP.
// Définition des configurations
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

// Créer la nouvelle instance ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Définir les paramètres de conversion
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.eml");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedEML.pdf");

// Définir les options de chargement EML
$loadOptions = new GroupDocs\Conversion\Model\EmlLoadOptions();
$loadOptions->setDisplayHeader(true);
$loadOptions->setDisplayFromEmailAddress(true);
$loadOptions->setDisplayToEmailAddress(true);
$loadOptions->setDisplayEmailAddress(true);
$loadOptions->setDisplayCcEmailAddress(true);
$loadOptions->setDisplayBccEmailAddress(true);
$settings->setLoadOptions($loadOptions);

// Définir les options de conversion PDF
$convertOptions = new GroupDocs\Conversion\Model\PdfConvertOptions();
$convertOptions->setCenterWindow(true);
$convertOptions->setMarginTop(50);
$convertOptions->setMarginLeft(50);
$convertOptions->setMarginRight(50);
$convertOptions->setMarginBottom(50);
$settings->setConvertOptions($convertOptions);

// Créer une demande de conversion
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Convertir le document
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Convertir EML en PDF à l'aide d'une API REST en PHP

Convertissez EML en PDF à l’aide d’une API REST en PHP.

Télécharger le fichier converti

L’exemple de code ci-dessus enregistrera le fichier PDF converti sur le cloud. Il peut être téléchargé à l’aide de l’exemple de code suivant :

// Cet exemple de code montre comment télécharger un PDF à partir du cloud.
// Définition des configurations
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Initialiser l'API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);

// Créer une demande de téléchargement
$request = new GroupDocs\Conversion\Model\Requests\DownloadFileRequest("convertedEML.pdf", self::$MyStorage, null);

// Télécharger un fichier
$response = $apiInstance->downloadFile($request);

Conversion Outlook MSG en PDF à l’aide de l’API REST en PHP

Nous pouvons convertir les fichiers Outlook MSG en documents PDF en suivant les étapes ci-dessous :

  • Tout d’abord, créez une instance de ConvertApi.
  • Ensuite, indiquez le chemin du fichier MSG téléchargé, le format de conversion et le chemin du fichier de sortie.
  • Ensuite, définissez diverses MsgLoadOptions telles que setDisplayCcEmailAddress, etc.
  • En option, définissez diverses PdfConvertOptions telles que setCenterWindow, setMarginTop, setMarginLeft, etc.
  • Après cela, créez ConvertDocumentRequest avec ConvertSettings comme argument.
  • Enfin, convertissez MSG en PDF en utilisant la méthode convertDocument() avec ConvertDocumentRequest.

L’exemple de code suivant montre comment convertir un fichier MSG en document PDF à l’aide d’une API REST en PHP. Veuillez suivre les étapes mentionnées précédemment pour charger et télécharger un fichier.

// Cet exemple de code montre comment convertir MSG en PDF en PHP.
// Définition des configurations
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

// Créer la nouvelle instance ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Définir les paramètres de conversion
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedMSG.pdf");

// Définir les options de chargement MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setDisplayCcEmailAddress(true);
$loadOptions->setDisplayBccEmailAddress(true);
$settings->setLoadOptions($loadOptions);

// Créer une demande de conversion
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Convertir le document
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Conversion Outlook MSG en PDF à l'aide de l'API REST en PHP.

Conversion Outlook MSG en PDF à l’aide de l’API REST en PHP.

Comment convertir les pièces jointes aux e-mails en PDF en PHP

Nous pouvons également convertir par programme les pièces jointes aux e-mails en documents PDF en suivant les étapes ci-dessous :

  • Tout d’abord, créez une instance de ConvertApi.
  • Ensuite, indiquez le chemin du fichier MSG téléchargé, le format de conversion et le chemin du fichier de sortie.
  • Créer une instance de MsgLoadOptions
  • Définissez la propriété convertAttachments sur true
  • Après cela, créez ConvertDocumentRequest avec ConvertSettings comme argument.
  • Enfin, convertissez EML en utilisant la méthode convertDocument() avec ConvertDocumentRequest.

L’exemple de code suivant montre comment convertir les pièces jointes d’un e-mail en un document PDF à l’aide d’une API REST en PHP. Veuillez suivre les étapes mentionnées précédemment pour charger et télécharger un fichier.

// Cet exemple de code montre comment convertir des pièces jointes d'e-mails en PDF en PHP.
// Définition des configurations
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Créer une instance ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Définir les paramètres de conversion
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("Msg_with_attachments.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedAttachments.pdf");

// Définir les options de chargement MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setConvertAttachments(true);

// Créer une demande de document
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Convertir le document
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Comment convertir les pièces jointes aux e-mails en PDF en PHP

Convertir les pièces jointes aux e-mails en PDF en PHP.

Essayez en ligne

Veuillez essayer les outils de conversion EML en PDF et MSG en PDF gratuits en ligne suivants, qui sont développés à l’aide de l’API ci-dessus.

Conclusion

Dans cet article, nous avons appris :

  • comment convertir EML en PDF en utilisant PHP ;
  • comment convertir un fichier Outlook MSG en un document PDF ;
  • Enregistrez les pièces jointes aux e-mails au format PDF en PHP ;
  • comment télécharger par programme un fichier EML dans le cloud ;
  • comment télécharger un fichier PDF à partir du cloud.

En outre, vous pouvez en savoir plus sur l’API GroupDocs.Conversion Cloud à l’aide de la documentation. Nous fournissons également une section API Reference qui vous permet de visualiser et d’interagir avec nos API directement via le navigateur. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également