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.
Apa itu Penukar Email-ke-PDF?
Dalam ruang kerja digital masa kini, keupayaan untuk menukar komunikasi e-mel menjadi dokumen PDF yang kekal dan mudah alih semakin berharga. Penukar Email-ke-PDF (dahulu dikenali sebagai Penukar EML ke PDF) adalah perpustakaan Java serba boleh yang menyelesaikan masalah ini. Tersedia di GitHub, alat sumber terbuka ini menyediakan pembangun dan organisasi cara yang boleh dipercayai untuk menukar fail e-mel (format .eml dan .msg) menjadi dokumen PDF profesional yang mengekalkan format, lampiran, dan metadata.
Penukar Email ke PDF adalah alat berasaskan Java yang serba boleh yang menukar fail e-mel ke format PDF sambil mengekalkan format, imej dalam talian, dan lampiran. Asalnya dibangunkan oleh Nick Russler, projek berlesen Apache ini menawarkan tiga cara penggunaan yang berbeza: sebagai perpustakaan Java untuk integrasi ke dalam aplikasi, sebagai utiliti baris perintah untuk pemprosesan kumpulan, dan sebagai aplikasi desktop dengan antara muka grafik. Perpustakaan ini mengendalikan proses kompleks menafsir struktur e-mel, membersihkan tajuk MIME yang rosak, menukar kandungan ke HTML, dan akhirnya memaparkannya sebagai PDF menggunakan enjin rendering wkhtmltopdf yang berkuasa.
Mula Menggunakan Penukar Email-ke-PDF
Sebelum menggunakan Penukar Email-ke-PDF, pastikan anda mempunyai persekitaran masa jalan Java dan wkhtmltopdf. Versi terkini tersedia di repositori GitHub, termasuk pemasang windows setup.exe dan fail JAR yang bebas platform.
Pasang Perpustakaan Penukar Email-ke-PDF melalui GitHub
git clone https://github.com/nickrussler/email-to-pdf-converter.git Anda boleh memuat turun perpustakaan secara langsung dari GitHub halaman.
Penukaran Fail E-mel Pintar ke PDF melalui Java
Perpustakaan Penukar Email ke PDF menyediakan penyelesaian menyeluruh untuk menukar fail e-mel menjadi dokumen PDF yang boleh diakses secara universal dalam aplikasi Java. Pada intinya, perpustakaan ini menguraikan struktur MIME e-mel dan menukarnya menjadi HTML yang bersih dan berformat baik sebelum penjanaan PDF. Pendekatan ini memastikan susun atur e-mel yang kompleks, teks berformat, dan elemen terbenam dipaparkan dengan betul dalam dokumen akhir. Contoh asas ini mengambil fail EML dan menukarnya ke PDF menggunakan tetapan lalai. Perpustakaan mengendalikan semua kerumitan penafsiran struktur e-mel, mengekstrak kandungan dalam talian, dan menjana PDF akhir.
Bagaimana Menukar Fail E-mel EML ke Dokumen PDF melalui Perpustakaan 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();
}
}
}
Mengendalikan Lampiran semasa Penukaran Email ke PDF melalui Java
Perpustakaan Penukar Email-ke-PDF menyediakan pilihan untuk mengekstrak lampiran e-mel secara berasingan. Pengguna boleh mengkonfigurasi sama ada mengekstrak lampiran ke direktori khusus dan secara pilihan menyertakan senarai nama lampiran dalam dokumen PDF itu sendiri. Contoh kod berikut menunjukkan cara menafsir mesej e-mel secara berasingan daripada proses penukaran, membolehkan pemeriksaan atau pengubahsuaian kandungan e-mel sebelum penjanaan PDF. Objek ConversionOptions menyediakan akses programatik kepada semua parameter konfigurasi yang tersedia dalam antara muka baris perintah.
Bagaimana Mengurus Lampiran semasa Penukaran Email ke PDF melalui 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();
}
}
}
Sokongan Pelbagai Format E-mel
Penukar Email-ke-PDF menyokong kedua-dua format fail EML dan MSG, menjadikannya serasi dengan pelbagai klien e-mel. Fail EML adalah format e-mel berasaskan teks standard yang digunakan oleh banyak aplikasi e-mel, manakala fail MSG adalah format e-mel proprietari Microsoft Outlook. Sokongan format dua ini memastikan fleksibiliti merentasi ekosistem e-mel yang berbeza.
Pengendalian Imej Dalam Talian Semasa Eksport Email ke PDF
Salah satu ciri menonjol ialah pengendalian yang betul terhadap imej dalam talian yang disematkan dalam badan e-mel. Perpustakaan Penukar Email-ke-PDF sumber terbuka mengenal pasti dan memproses imej-imej ini dengan tepat, memastikan ia muncul di lokasi yang sesuai dalam output PDF dan bukan sebagai lampiran berasingan.