Преобразование электронных писем в PDF с помощью REST API в PHP.

В некоторых случаях нам может потребоваться преобразовать наши электронные письма и сообщения Outlook в документы PDF. Такое преобразование позволяет нам вести учет важных электронных писем или делиться ими в портативной форме. Мы также можем программно преобразовать документы, прикрепленные к электронным письмам, в документы PDF. В этой статье мы узнаем, как конвертировать электронные письма и файлы MSG в документы PDF с помощью REST API в PHP.

В этой статье должны быть раскрыты следующие темы:

Преобразование электронной почты в PDF REST API и PHP SDK

Для преобразования файлов EML и MSG в документы PDF мы будем использовать API PHP SDK of GroupDocs.Conversion Cloud. Это позволяет нам легко конвертировать документы и изображения любого поддерживаемого формата файлов в любой требуемый формат. Пожалуйста, установите его с помощью следующей команды в консоли:

composer require groupdocscloud/groupdocs-conversion-cloud

После установки используйте autoload Composers, чтобы использовать SDK, как показано ниже:

require_once('vendor/autoload.php'); 

Пожалуйста, получите свой идентификатор клиента и секрет на панели управления, прежде чем выполнять указанные шаги. Получив свой идентификатор и секрет, добавьте код, как показано ниже:

// В следующем примере кода показано, как добавить идентификатор и секрет клиента в код.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';

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

Преобразование электронных писем в PDF с помощью REST API в PHP

Мы можем легко конвертировать электронные письма в PDF-документы программно в облаке, выполнив простые шаги, указанные ниже:

  1. Загрузить файл EML в облако
  2. Конвертировать EML в PDF
  3. Скачать преобразованный PDF-файл

Загрузите EML-файл

Во-первых, мы загрузим файл EML в облако, используя следующий пример кода:

// В этом примере кода показано, как загрузить файл EML в облако.
// Настройка конфигураций
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Инициализировать 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);

В результате загруженный файл будет доступен в разделе файлов панели инструментов в облаке.

Преобразование EML в PDF в PHP

Теперь мы преобразуем электронные письма из загруженного файла EML в документ PDF, выполнив следующие действия:

  • Во-первых, создайте экземпляр ConvertApi.
  • Затем укажите путь к загруженному файлу EML, формат преобразования и путь к выходному файлу.
  • Затем установите различные EmlLoadOptions, такие как setDisplayHeader, setDisplayEmailAddress и т. д.
  • При желании установите различные PdfConvertOptions, такие как setCenterWindow, setMarginTop, setMarginLeft и т. д.
  • После этого создайте ConvertDocumentRequest с ConvertSettings в качестве аргумента.
  • Наконец, преобразуйте EML с помощью метода convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать файл EML в документ PDF с помощью REST API в PHP.

// В этом примере кода показано, как преобразовать EML в PDF на PHP.
// Настройка конфигураций
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

// Создайте новый экземпляр ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Определить настройки преобразования
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.eml");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedEML.pdf");

// Определить параметры загрузки 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);

// Определить параметры преобразования 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);

// Создать запрос на конвертацию
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Конвертировать документ
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Преобразование EML в PDF с помощью REST API в PHP

Преобразование EML в PDF с помощью REST API в PHP.

Загрузите преобразованный файл

Приведенный выше пример кода сохранит преобразованный PDF-файл в облаке. Его можно загрузить с помощью следующего примера кода:

// В этом примере кода показано, как загрузить PDF из облака.
// Настройка конфигураций
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Инициализировать API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);

// Создать запрос на скачивание
$request = new GroupDocs\Conversion\Model\Requests\DownloadFileRequest("convertedEML.pdf", self::$MyStorage, null);

// Загрузить файл
$response = $apiInstance->downloadFile($request);

Преобразование Outlook MSG в PDF с использованием REST API в PHP

Мы можем преобразовать файлы Outlook MSG в документы PDF, выполнив следующие действия:

  • Во-первых, создайте экземпляр ConvertApi.
  • Затем укажите путь к загруженному файлу MSG, формат преобразования и путь к выходному файлу.
  • Затем установите различные MsgLoadOptions, такие как setDisplayCcEmailAddress и т. д.
  • При желании установите различные PdfConvertOptions, такие как setCenterWindow, setMarginTop, setMarginLeft и т. д.
  • После этого создайте ConvertDocumentRequest с ConvertSettings в качестве аргумента.
  • Наконец, конвертируйте MSG в PDF с помощью метода convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать файл MSG в документ PDF с помощью REST API в PHP. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить и скачать файл.

// В этом примере кода показано, как преобразовать MSG в PDF на PHP.
// Настройка конфигураций
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);

// Создайте новый экземпляр ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Определить настройки преобразования
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedMSG.pdf");

// Определить параметры загрузки MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setDisplayCcEmailAddress(true);
$loadOptions->setDisplayBccEmailAddress(true);
$settings->setLoadOptions($loadOptions);

// Создать запрос на конвертацию
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Конвертировать документ
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Преобразование Outlook MSG в PDF с использованием REST API в PHP.

Преобразование Outlook MSG в PDF с использованием REST API в PHP.

Как преобразовать вложения электронной почты в PDF в PHP

Мы также можем программно конвертировать вложения электронной почты в документы PDF, выполнив следующие действия:

  • Во-первых, создайте экземпляр ConvertApi.
  • Затем укажите путь к загруженному файлу MSG, формат преобразования и путь к выходному файлу.
  • Создайте экземпляр MsgLoadOptions
  • Установите для свойства convertAttachments значение true
  • После этого создайте ConvertDocumentRequest с ConvertSettings в качестве аргумента.
  • Наконец, преобразуйте EML с помощью метода convertDocument() с ConvertDocumentRequest.

В следующем примере кода показано, как преобразовать вложения электронной почты в документ PDF с помощью REST API в PHP. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить и скачать файл.

// В этом примере кода показано, как преобразовать вложения электронной почты в PDF в PHP.
// Настройка конфигураций
$configuration = new GroupDocs\Conversion\Configuration();
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);

// Создать экземпляр ConversionAPI
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);

// Определить настройки преобразования
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("Msg_with_attachments.msg");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedAttachments.pdf");

// Определить параметры загрузки MSG
$loadOptions = new GroupDocs\Conversion\Model\MsgLoadOptions();
$loadOptions->setConvertAttachments(true);

// Создать запрос документа
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);

// Конвертировать документ
$response = $convertApi->convertDocument($request);
echo "Document converted successfully: ", $response[0]->getUrl();
Как преобразовать вложения электронной почты в PDF в PHP

Преобразование вложений электронной почты в PDF в PHP.

Попробуйте онлайн

Пожалуйста, попробуйте следующие бесплатные онлайн-инструменты преобразования EML в PDF и MSG в PDF, которые разработаны с использованием вышеуказанного API.

Заключение

В этой статье мы узнали:

  • как конвертировать EML в PDF с помощью PHP;
  • как преобразовать файл Outlook MSG в документ PDF;
  • Сохраняйте вложения электронной почты в формате PDF в PHP;
  • как программно загрузить файл EML в облако;
  • как скачать файл PDF из облака.

Кроме того, вы можете узнать больше о GroupDocs.Conversion Cloud API, воспользовавшись документацией. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

Смотрите также