Подготовить EML с текстовой частью

Сохраните письмо из почтового клиента именно как EML, а не как скриншот или страницу HTML. Выберите один файл размером до 2 МиБ. Для успешной операции в нём должна быть непустая часть text/plain; наличие читаемого текста на экране клиента само по себе этого не гарантирует, поскольку клиент может показывать HTML.

В MIME одно письмо может содержать альтернативные версии текста и вложенные файлы. Этот профиль выбирает доступный обычный текст и создаёт страницы A4. Таблицы HTML, фирменные блоки, цвета и внешние изображения не воспроизводятся. Если нужно сначала понять состав письма, откройте его отдельным просмотрщиком EML и проверьте заголовки и список вложений.

Официальные требования: RFC 2046: текстовые части и MIME

Текстовое письмо с отдельным вложением
Исходные данные
example.eml: тема «Проверка письма», text/plain «Здравствуйте!», вложение «данные.txt».
Размер текста: 11 пунктов.
Результат
email-plain-text.pdf — заголовки, обычный текст и список вложений.
attachments.json — имя, размер и SHA-256.
attachments.zip — отдельный файл «данные.txt».

Вложение скачивается из ZIP; PDF не содержит его байты и не воспроизводит HTML-дизайн.

Создать читаемую PDF-копию

Единственная настройка оформления — размер текста: целое число от 10 до 18 пунктов, по умолчанию 11. Используется Manrope с кириллицей. Длинные строки переносятся по ширине печатной области, включая непрерывные ссылки и последовательности без пробелов. При заполнении страницы создаётся следующая; итог ограничен 40 страницами.

В начале PDF печатаются тема, отправитель, получатели и исходная дата. Поля Cc и Bcc добавляются, если соответствующие заголовки присутствуют. Затем идёт text/plain и список приложенных файлов. Проверьте хотя бы начало, середину и конец длинного письма: одинаковое число страниц не доказывает, что весь важный фрагмент удобен для чтения.

  1. Загрузите EML и выберите размер текста.
  2. Скачайте PDF и файл attachments.json.
  3. При наличии вложений дополнительно скачайте attachments.zip.

Найти вложения и сверить байты

Вложения не встроены внутрь PDF. Их декодированные файлы упакованы в отдельный ZIP, а JSON перечисляет имя, исходное имя, MIME-тип, размер в байтах и SHA-256. Например, у демонстрационного «данные.txt» в архиве будет собственное текстовое содержимое, а в PDF — строка списка, сообщающая о его наличии.

Небезопасные символы имён убираются, совпадающие имена получают различимые варианты. Поэтому сравнивайте одновременно исходное и выходное имя, размер и содержимое. Для важного приложения вычислите SHA-256 скачанного файла отдельным инструментом и сопоставьте с манифестом. Такое совпадение подтверждает одинаковые байты с декодированным вложением, но не удостоверяет автора сообщения или его безопасность.

Понять HTML-only, Unicode и пределы MIME

Если письмо содержит только HTML, преобразование останавливается с сообщением об отсутствии text/plain. Сохраните текстовую версию через почтовый клиент и проверьте её отдельно. Конвертер не запускает HTML-код и не загружает картинки по внешним ссылкам. Не следует удалять MIME-заголовки вручную: текст base64 или quoted-printable после такой правки может выглядеть как повреждённое письмо.

Допустимы текст до 100000 символов, заголовки до 64 КиБ, до 100 MIME-частей и глубина до 12 уровней; суммарные декодированные вложения ограничены 2 МиБ. Если Manrope не содержит знак, например эмодзи, в PDF появится метка вида [U+1F600]. Отчёт перечисляет заменённые коды, чтобы потеря отображения не осталась незаметной.

Проверить адресатов и оставить оригинал

Сверьте тему, адрес отправителя, To, Cc, Bcc и дату с исходным письмом. Bcc особенно важен перед передачей копии другому человеку: в сохранённом EML этот заголовок может присутствовать, и тогда PDF его покажет. Проверьте также текст пересланной переписки и имена файлов, которые могут раскрывать дополнительные сведения.

Для создания результата исходное письмо отправляется серверу и обрабатывается в памяти; инструмент не создаёт историю документов. Сохраните оригинальный EML вместе с нужными вложениями после проверки. PDF не переносит действительность цифровой подписи и не является полной заменой MIME-источника. Для рабочей переписки сначала соблюдите правила её передачи, действующие в вашей организации.

Официальные требования: RFC 5322: адресные поля и Bcc

Вопросы и ответы

Получится точная копия дизайна письма?

Нет. PDF печатает заголовки и text/plain. HTML-оформление, внешние картинки и действительность цифровой подписи не воспроизводятся; HTML-only письма отклоняются.

Где находятся вложения?

В PDF есть только список. Файлы с декодированными исходными байтами находятся в отдельном attachments.zip при наличии вложений; attachments.json содержит имена, размеры и SHA-256.

Какие размер файла и объём текста допустимы?

Один EML до 2 МиБ, text/plain до 100000 символов, результат до 40 страниц A4. Размер текста — от 10 до 18 пунктов, по умолчанию 11.

Что означают метки [U+1F600]?

Шрифт Manrope не содержит соответствующего символа. Вместо пропуска ставится видимая метка Unicode, а её код попадает в отчёт. Исходный EML сохраняет оригинальный знак.

Попадут ли в PDF скрытые получатели Bcc?

Да, если заголовок Bcc есть в исходнике. Перед отправкой PDF проверьте все заголовки и список вложений: копия может раскрывать адреса, которых нет в обычном виде письма.

Можно ли удалить исходник после скачивания PDF?

Сначала сохраните оригинал и проверьте результат. PDF не заменяет структуру MIME, цифровую подпись и полный набор заголовков EML; вложения скачиваются отдельно.