Free Java Email Library to Convert EML & MSG to PDF
Open Source Java Email Processing Library for Converting Email Files (EML, MSG) to PDF. It Supports Handling Attachments and Inline Images and Multiple Email Formats inside Java apps.
Що таке Email-to-PDF Converter?
У сучасному цифровому робочому середовищі можливість конвертувати електронну кореспонденцію у постійні, портативні PDF‑документи стає все ціннішою. Email-to-PDF Converter (раніше EML to PDF Converter) — це універсальна Java‑бібліотека, яка вирішує саме цю задачу. Доступна на GitHub, ця відкрита інструментальна засіб надає розробникам і організаціям надійний спосіб перетворювати файли електронної пошти (.eml та .msg) у професійні PDF‑документи, які зберігають форматування, вкладення та метадані.
Email to PDF Converter — це універсальний інструмент на Java, який конвертує файли електронної пошти у PDF, зберігаючи форматування, вбудовані зображення та вкладення. Спочатку розроблений Ніком Расслером, цей проект під ліцензією Apache пропонує три різні режими використання: як Java‑бібліотеку для інтеграції в додатки, як утиліту командного рядка для пакетної обробки та як настільний застосунок з графічним інтерфейсом. Бібліотека обробляє складний процес парсингу структури листа, очищення некоректних MIME‑заголовків, конвертації в HTML та, в кінцевому підсумку, рендерингу у PDF за допомогою потужного рушія wkhtmltopdf.
Початок роботи з Email-to-PDF Converter
Перш ніж використовувати Email-to-PDF Converter, переконайтеся, що у вас встановлене середовище виконання Java та wkhtmltopdf. Останні випуски доступні у репозиторії GitHub, включаючи інсталятор windows setup.exe та незалежний від платформи JAR‑файл.
Встановити бібліотеку Email-to-PDF Converter через GitHub
git clone https://github.com/nickrussler/email-to-pdf-converter.git Ви можете завантажити бібліотеку безпосередньо зі сторінки GitHub.
Інтелектуальне конвертування файлів електронної пошти у PDF за допомогою Java
Бібліотека Email to PDF Converter надає комплексне рішення для перетворення файлів електронної пошти у універсально доступні PDF‑документи всередині Java‑додатків. У своїй основі бібліотека парсить MIME‑структури листа та конвертує їх у чистий, добре відформатований HTML перед генерацією PDF. Такий підхід забезпечує правильне відтворення складних макетів листа, стилізованого тексту та вбудованих елементів у фінальному документі. У цьому базовому прикладі файл EML конвертується у PDF з використанням типових налаштувань. Бібліотека бере на себе всю складність парсингу структури листа, видобутку вбудованого вмісту та генерації готового PDF.
Як конвертувати файл EML у PDF‑документ за допомогою Java бібліотеки?
import mimeparser.MimeMessageConverter;
import java.io.File;
public class EmailConverterExample {
public static void main(String[] args) {
try {
File emailFile = new File("example.eml");
File outputPdf = new File("output.pdf");
// Perform the conversion
MimeMessageConverter.convertToPdf(emailFile, outputPdf);
System.out.println("Conversion completed successfully!");
} catch (Exception e) {
System.err.println("Error during conversion: " + e.getMessage());
e.printStackTrace();
}
}
}
Обробка вкладень під час конвертації електронної пошти у PDF за допомогою Java
Бібліотека Email-to-PDF Converter надає можливість окремо видобувати вкладення листа. Користувачі можуть налаштувати, чи слід видобувати вкладення у спеціальну директорію, а також за потреби включати список імен вкладень безпосередньо у PDF‑документ. Нижче наведено приклад коду, який демонструє, як розпарсити лист окремо від процесу конвертації, що дозволяє переглянути або змінити вміст листа перед створенням PDF. Об’єкт ConversionOptions забезпечує програмний доступ до всіх параметрів, доступних у інтерфейсі командного рядка.
Як керувати вкладеннями під час конвертації електронної пошти у PDF за допомогою Java?
import mimeparser.MimeMessageConverter;
import mimeparser.MimeMessageParser;
import javax.mail.internet.MimeMessage;
import java.io.File;
import java.io.FileInputStream;
import java.util.List;
public class AttachmentHandler {
public static void main(String[] args) {
try {
File emailFile = new File("email-with-attachments.eml");
// Parse the email
MimeMessageParser parser = new MimeMessageParser();
parser.parse(new FileInputStream(emailFile));
// Access attachment information
List attachments = parser.getAttachmentList();
System.out.println("Found " + attachments.size() + " attachments:");
for (File attachment : attachments) {
System.out.println("- " + attachment.getName());
}
// Convert with attachment extraction
ConversionOptions options = new ConversionOptions();
options.setExtractAttachments(true);
options.setAddAttachmentNames(true);
MimeMessageConverter.convertToPdf(
parser,
new File("output-with-attachments.pdf"),
options
);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Підтримка кількох форматів електронної пошти
Email-to-PDF Converter підтримує як формати EML, так і MSG, що робить його сумісним з різними поштовими клієнтами. Файли EML — це стандартний текстовий формат електронної пошти, який використовується багатьма поштовими програмами, тоді як файли MSG — це пропрієтарний формат Microsoft Outlook. Така підтримка обох форматів забезпечує гнучкість у різних поштових екосистемах.
Обробка вбудованих зображень під час експорту електронної пошти у PDF
Одна з визначних особливостей — правильна обробка вбудованих зображень, розташованих у тілі листа. Відкрита бібліотека Email-to-PDF Converter коректно ідентифікує та обробляє ці зображення, забезпечуючи їх відображення у відповідних місцях PDF‑виводу, а не як окремі вкладення.