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 چیست؟
در فضای کاری دیجیتال امروز، توانایی تبدیل ارتباطات ایمیلی به اسناد PDF دائمی و قابل حمل ارزش فزایندهای پیدا کرده است. تبدیلکننده Email-to-PDF (که پیشتر به نام EML to PDF Converter شناخته میشد) یک کتابخانهٔ جاوا چندمنظوره است که دقیقاً این مشکل را حل میکند. این ابزار منبع باز که در گیتهاب موجود است، به توسعهدهندگان و سازمانها راهی قابل اعتماد برای تبدیل فایلهای ایمیل (قالبهای .eml و .msg) به اسناد PDF حرفهای که قالببندی، پیوستها و متادیتا را حفظ میکنند، ارائه میدهد.
تبدیلکننده Email به PDF یک ابزار مبتنی بر جاوا است که فایلهای ایمیل را به فرمت PDF تبدیل میکند در حالی که قالببندی، تصاویر درونخطی و پیوستها را حفظ میکند. این پروژه که توسط Nick Russler توسعه یافته و تحت مجوز Apache منتشر شده است، سه حالت استفادهٔ متفاوت ارائه میدهد: بهعنوان یک کتابخانهٔ جاوا برای ادغام در برنامهها، بهعنوان یک ابزار خط فرمان برای پردازش دستهای، و بهعنوان یک برنامهٔ دسکتاپ با رابط گرافیکی. این کتابخانه فرآیند پیچیدهٔ تجزیه ساختارهای ایمیل، پاکسازی سرصفحههای MIME خراب، تبدیل محتوا به HTML و در نهایت رندر آن به PDF را با استفاده از موتور قدرتمند wkhtmltopdf انجام میدهد.
شروع کار با تبدیلکننده Email-to-PDF
قبل از استفاده از تبدیلکننده Email-to-PDF، اطمینان حاصل کنید که محیط زمان اجرا (runtime) جاوا و wkhtmltopdf را نصب کردهاید. آخرین نسخهها در مخزن گیتهاب موجود هستند و شامل نصبکنندهٔ windows به صورت setup.exe و فایل JAR مستقل از پلتفرم میباشند.
نصب کتابخانهٔ تبدیلکننده Email-to-PDF از طریق گیتهاب
git clone https://github.com/nickrussler/email-to-pdf-converter.git میتوانید کتابخانه را مستقیماً از صفحهٔ GitHub دانلود کنید.
تبدیل هوشمند فایلهای ایمیل به PDF با جاوا
کتابخانهٔ تبدیلکننده Email به PDF یک راهحل جامع برای تبدیل فایلهای ایمیل به اسناد PDF قابل دسترس در همه جا داخل برنامههای جاوا فراهم میکند. این کتابخانه ساختارهای MIME ایمیل را تجزیه میکند و آنها را به HTML تمیز و قالببندیشده تبدیل مینماید قبل از تولید PDF. این رویکرد تضمین میکند که طرحهای پیچیده ایمیل، متنهای قالببندیشده و عناصر توکار بهدرستی در سند نهایی رندر شوند. این مثال ساده یک فایل EML را میگیرد و با تنظیمات پیشفرض به PDF تبدیل میکند. کتابخانه تمام پیچیدگیهای تجزیه ساختار ایمیل، استخراج محتوای درونخطی و تولید PDF نهایی را مدیریت میکند.
چگونه فایل ایمیل EML را به اسناد PDF تبدیل کنیم با استفاده از کتابخانهٔ جاوا؟
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 با جاوا
کتابخانهٔ تبدیلکننده Email-to-PDF گزینههایی برای استخراج پیوستهای ایمیل بهصورت جداگانه فراهم میکند. کاربران میتوانند تنظیم کنند که آیا پیوستها به یک پوشهٔ اختصاصی استخراج شوند و بهصورت اختیاری فهرستی از نامهای پیوستها در خود سند PDF گنجانده شود. مثال کد زیر نشان میدهد چگونه میتوان یک پیام ایمیل را بهصورت جداگانه از فرآیند تبدیل تجزیه کرد تا محتوا قبل از تولید PDF بررسی یا اصلاح شود. شیء ConversionOptions دسترسی برنامهنویسی به تمام پارامترهای پیکربندی موجود در رابط خط فرمان را فراهم میکند.
چگونه پیوستها را در حین تبدیل ایمیل به PDF با جاوا مدیریت کنیم؟
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 از هر دو فرمت فایل EML و MSG پشتیبانی میکند و بنابراین با انواع مختلف کلاینتهای ایمیل سازگار است. فایلهای EML فرمتهای متنی استانداردی هستند که توسط بسیاری از برنامههای ایمیل استفاده میشوند، در حالی که فایلهای MSG فرمت اختصاصی ایمیل مایکروسافت آوتلوک هستند. این پشتیبانی دو فرمت، انعطافپذیری را در اکوسیستمهای مختلف ایمیلی تضمین میکند.
مدیریت تصاویر درونخطی هنگام خروجی PDF از ایمیل
یکی از ویژگیهای برجسته، مدیریت صحیح تصاویر درونخطی تعبیهشده در بدنهٔ ایمیل است. کتابخانهٔ منبع باز تبدیلکننده Email-to-PDF بهدرستی این تصاویر را شناسایی و پردازش میکند تا در مکانهای مناسب داخل خروجی PDF ظاهر شوند، نه بهعنوان پیوستهای جداگانه.