V určitých případech možná budeme muset převést naše e-maily a zprávy aplikace Outlook na dokumenty PDF. Taková konverze nám umožňuje uchovávat záznamy o důležitých e-mailech nebo je sdílet v přenosné podobě. Můžeme také převést dokumenty přiložené v e-mailech na dokumenty PDF programově. V tomto článku se naučíme, jak převést e-maily a soubory MSG na dokumenty PDF pomocí REST API v PHP.
Tento článek bude obsahovat následující témata:
- Převod e-mailu do PDF REST API a PHP SDK
- Převod e-mailů do PDF v PHP
- Konverze Outlook MSG do PDF v PHP
- Jak převést e-mailové přílohy do PDF v PHP
Převod e-mailu do PDF REST API a PHP SDK
Pro převod souborů EML a MSG na dokumenty PDF budeme používat PHP SDK of GroupDocs.Conversion Cloud API. Umožňuje nám bezproblémově převádět dokumenty a obrázky jakéhokoli podporovaného formátu souboru do libovolného formátu, který požadujeme. Nainstalujte jej pomocí následujícího příkazu v konzole:
composer require groupdocscloud/groupdocs-conversion-cloud
Po instalaci použijte autoload od skladatelů k použití sady SDK, jak je uvedeno níže:
require_once('vendor/autoload.php');
Před provedením uvedených kroků získejte své ID klienta a tajný klíč z řídicího panelu. Jakmile budete mít své ID a tajemství, přidejte kód, jak je uvedeno níže:
// Následující příklad kódu ukazuje, jak do kódu přidat ID klienta a tajný klíč
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';
Převeďte e-maily do PDF pomocí REST API v PHP
E-maily můžeme snadno převést na dokumenty PDF programově v cloudu podle jednoduchých kroků uvedených níže:
- Nahrát soubor EML do cloudu
- Převést EML do PDF
- Stáhnout převedený soubor PDF
Nahrajte soubor EML
Nejprve nahrajeme soubor EML do cloudu pomocí následující ukázky kódu:
// Tato ukázka kódu ukazuje, jak nahrát soubor EML do cloudu.
// Nastavení konfigurací
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
// Inicializovat 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);
V důsledku toho bude nahraný soubor dostupný v sekce souborů řídicího panelu v cloudu.
Převést EML do PDF v PHP
Nyní převedeme e-maily z nahraného souboru EML do dokumentu PDF podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále zadejte cestu k nahranému souboru EML, formát převodu a cestu k výstupnímu souboru.
- Poté nastavte různé možnosti EmlLoadOptions, jako je setDisplayHeader, setDisplayEmailAddress atd.
- Volitelně nastavte různé možnosti PdfConvertOptions, jako je setCenterWindow, setMarginTop, setMarginLeft atd.
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte EML pomocí metody convertDocument() s ConvertDocumentRequest.
Následující ukázka kódu ukazuje, jak převést soubor EML na dokument PDF pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak převést EML do PDF v PHP.
// Nastavení konfigurací
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
// Vytvořte novou instanci ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.eml");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedEML.pdf");
// Definujte možnosti zatížení 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);
// Definujte možnosti převodu 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);
// Vytvořit žádost o převod
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Stáhněte si převedený soubor
Výše uvedená ukázka kódu uloží převedený soubor PDF do cloudu. Lze jej stáhnout pomocí následující ukázky kódu:
// Tento příklad kódu ukazuje, jak stahovat PDF z cloudu.
// Nastavení konfigurací
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
// Inicializovat API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);
// Vytvořit požadavek na stažení
$request = new GroupDocs\Conversion\Model\Requests\DownloadFileRequest("convertedEML.pdf", self::$MyStorage, null);
// Stáhnout soubor
$response = $apiInstance->downloadFile($request);
Konverze Outlook MSG do PDF pomocí REST API v PHP
Soubory Outlook MSG můžeme převést na dokumenty PDF podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále zadejte cestu k nahranému souboru MSG, formát převodu a cestu k výstupnímu souboru.
- Poté nastavte různé možnosti MsgLoadOptions, jako je setDisplayCcEmailAddress atd.
- Volitelně nastavte různé možnosti PdfConvertOptions, jako je setCenterWindow, setMarginTop, setMarginLeft atd.
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte MSG do PDF pomocí metody convertDocument() s ConvertDocumentRequest.
Následující ukázka kódu ukazuje, jak převést soubor MSG na dokument PDF pomocí REST API v PHP. Chcete-li nahrát a stáhnout soubor, postupujte podle výše uvedených kroků.
// Tento příklad kódu ukazuje, jak převést MSG do PDF v PHP.
// Nastavení konfigurací
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
// Vytvořte novou instanci ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedMSG.pdf");
// Definujte možnosti zatížení MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setDisplayCcEmailAddress(true);
$loadOptions->setDisplayBccEmailAddress(true);
$settings->setLoadOptions($loadOptions);
// Vytvořit žádost o převod
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Jak převést e-mailové přílohy do PDF v PHP
Můžeme také převést e-mailové přílohy na dokumenty PDF programově podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále zadejte cestu k nahranému souboru MSG, formát převodu a cestu k výstupnímu souboru.
- Vytvořte instanci MsgLoadOptions
- Nastavte vlastnost convertAttachments na hodnotu true
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte EML pomocí metody convertDocument() s ConvertDocumentRequest.
Následující ukázka kódu ukazuje, jak převést e-mailové přílohy na dokument PDF pomocí REST API v PHP. Chcete-li nahrát a stáhnout soubor, postupujte podle výše uvedených kroků.
// Tento příklad kódu ukazuje, jak převést přílohy e-mailu do PDF v PHP.
// Nastavení konfigurací
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
// Vytvořte instanci ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("Msg_with_attachments.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedAttachments.pdf");
// Definujte možnosti zatížení MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setConvertAttachments(true);
// Vytvořit žádost o dokument
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Vyzkoušejte online
Vyzkoušejte prosím následující bezplatné online nástroje pro převod EML do PDF a MSG do PDF, které jsou vyvinuty pomocí výše uvedeného API.
- https://products.groupdocs.app/conversion/eml-to-pdf
- https://products.groupdocs.app/conversion/msg-to-pdf
Závěr
V tomto článku jsme se dozvěděli:
- jak převést EML do PDF pomocí PHP;
- jak převést soubor Outlook MSG na dokument PDF;
- Ukládání e-mailových příloh jako PDF v PHP;
- jak programově nahrát soubor EML do cloudu;
- jak stáhnout soubor PDF z cloudu.
Kromě toho se můžete dozvědět více o GroupDocs.Conversion Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.