Chuyển đổi email EML và MSG sang PDF trong Java

EMLMSG là các định dạng email phổ biến được MS Outlook sử dụng để lưu trữ email. Có thể có những trường hợp khi bạn cần chia sẻ nội dung của các tệp EML hoặc MSG từ bên trong các ứng dụng web hoặc máy tính để bàn của bạn. Một trong những giải pháp phù hợp nhất là chuyển đổi các tập tin email sang định dạng PDF. Trong bài viết này, bạn sẽ học cách chuyển đổi email sang PDF trong Java. Bạn có thể sử dụng các mẫu mã được cung cấp cho chuyển đổi EML sang PDF và MSG sang PDF trong C#.

Java Email to PDF Converter - Tải xuống miễn phí

Để chuyển đổi email EML hoặc MSG sang PDF, chúng tôi sẽ sử dụng kết hợp Aspose.Email dành cho JavaAspose.Words dành cho Java. Trước đây là một API email cung cấp một loạt các tính năng để tạo các ứng dụng email client. Trong khi, cái thứ hai là một API xử lý văn bản để tạo và thao tác các tài liệu Word. Bạn có thể sử dụng các cấu hình Maven sau để cài đặt API trong các ứng dụng Java của mình.

Kho:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
<repository>

Sự phụ thuộc:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>22.3</version>
    <type>pom</type>
</dependency>

Ngoài ra, bạn có thể tải xuống JAR của các API từ các liên kết sau.

Chuyển đổi EML hoặc MSG sang PDF trong Java

Sau đây là các bước để chuyển đổi email EML hoặc MSG sang PDF trong Java.

  • Tải tệp email bằng lớp MailMessage.
  • Lưu email vào đối tượng ByteArrayOutputStream dưới dạng định dạng MHTML mặc định.
  • Tạo một phiên bản của lớp LoadOptions và đặt định dạng tải là MHTML.
  • Khởi tạo lớp Document và chuyển các đối tượng ByteArrayOutputStream và LoadOptions làm tham số cho phương thức khởi tạo của nó.
  • Chuyển đổi email sang PDF bằng phương pháp Document.save (String, SaveFormat.PDF).

Sau đây là mã hoàn chỉnh để chuyển đổi email sang PDF trong Java.

// Tải email
FileInputStream fstream=new FileInputStream("email.eml");
MailMessage eml = MailMessage.load(fstream);

// Lưu Tin nhắn vào luồng đầu ra ở định dạng MHTML
ByteArrayOutputStream emlStream = new ByteArrayOutputStream();
eml.save(emlStream, SaveOptions.getDefaultMhtml());

// Tải luồng trong tài liệu Word
LoadOptions lo = new LoadOptions();
lo.setLoadFormat(LoadFormat.MHTML);
Document doc = new Document(new ByteArrayInputStream(emlStream.toByteArray()), lo);

// Lưu vào đĩa
doc.save("converted.Pdf", SaveFormat.PDF);

// Hoặc lưu vào luồng
ByteArrayOutputStream foStream = new ByteArrayOutputStream();
doc.save(foStream, SaveFormat.PDF);

Email to PDF Java Converter APIs - Nhận Giấy phép Miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử các API mà không có giới hạn đánh giá.

Gửi email sang PDF - Demo trực tiếp

Aspose EML sang PDF Online Converter

Sau đây là công cụ chuyển đổi trực tuyến của Aspose để chuyển đổi các tệp EML sang PDF.

Aspose MSG sang PDF Online Converter

Bạn có thể sử dụng công cụ chuyển đổi trực tuyến sau đây cho bản trình diễn MSG sang PDF.

Sự kết luận

Trong bài viết này, bạn đã học cách chuyển đổi email EML hoặc MSG sang PDF trong Java. Chúng tôi đã trình bày cách sử dụng kết hợp Aspose.Email và Aspose.Words để triển khai chuyển đổi email sang PDF từ bên trong các ứng dụng Java. Bạn cũng có thể khám phá các tài liệu được đề cập bên dưới của cả hai API. Ngoài ra, bạn có thể đăng các truy vấn của mình lên diễn đàn của chúng tôi.

Xem thêm