em Trước Tài Liệu chức năng how to preview documents là điều cần thiết cho bất kỳ ứng dụng nào xử lý số lượng lớn tệp. Với GroupDocs.Watermark cho Java, bạn có thể tạo các bản xem trước nhanh, chất lượng cao mà không cần tải toàn bộ tài liệu vào bộ nhớ. Trong hướng dẫn này, bạn sẽ khám phá từng bước cách thiết lập thư viện, quản lý luồng trang và tạo hình ảnh xem trước cho mỗi trang của tài liệu.

C lời nhanh

  • Th được đề xuất? Group
  • Từ khóa chính mà hướng dẫn này nhắm tới là gì? how to preview documents
  • Tôi có cần giấy phép không? Bản dùng thử hoạt động cho việc đánh giá; giấy phép đầy đủ là bắt buộc cho môi trường sản xuất.
  • Tôi có thể tùy chỉnh định dạng đầu ra không? Có – bạn có thể thay đổi- **markerem trước nhẹ (thường là PNG hoặc JPEG) đại diện cho một trang duy nhất của tệp. Nó cho phép người dùng nhanh chóng nhìn qua nội dung, cải thiện trải nghiệm người dùng (UX) trong các trình duyệt tệp, nền tảng CMS và dịch vụ lưu trữ đám mây.

Tại sao nên sử dụng GroupDocs.Watermark để tạo xem trước?

  • Performance‑focused: Tạo hình trang tàiạt động với PDF, tệp Office, Visio và nhiều định dạng khác.
  • Built‑in stream handling: Cung cấp các giao diện ICreatePageStreamIReleasePageStream để quản lý tài nguyên một cách sạch sẽ.

Yêu cầu trước

Trước khi bắt đầu, hãy chắc chắn rằng bạn có:

  1. GroupDocs.Watermark Java v24.11 – phiên bản ổn định mới nhất.
  2. JDK 8+ đã được cài đặt và một IDE như IntelliJ IDEA hoặc Eclipse.
  3. Kiến thức cơ bản về Java (file I/O, lập trình hướng đối tượng).

Cài đặt GroupDocs.Watermark cho Java

Thêm thư viện vào dự án của bạn bằng Maven:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/watermark/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-watermark</artifactId>
      <version>24.11</version>
   </dependency>
</dependencies>

Hoặc tải JAR trực tiếp từ trang chính thức:
GroupDocs.Watermark for Java releases

Nhận giấy phép

  • Free Trial – chức năng giới hạn, phù hợp cho việc thử nghiệm.
  • Temporary License – đầy đủ tính năng cho thời gian đánh giá ngắn.
  • Full License – sử dụng không giới hạn và hỗ trợ ưu tiên.

Hướng dẫn triển khai

Khởi tạo Watermarker

Bước đầu tiên là tạo một thể hiện Watermarker trỏ tới tài liệu nguồn.

import com.groupdocs.watermark.Watermarker;

public class FeatureInitializeWatermarker {
    public static void main(String[] args) {
        String inputDocumentPath = "YOUR_DOCUMENT_DIRECTORY/diagram.vdx";
        
        // Initialize Watermarker with the specified document
        Watermarker watermarker = new Watermarker(inputDocumentPath);
        
        System.out.println("Watermarker initialized.");
    }
}

Tip: Thay thế YOUR_DOCUMENT_DIRECTORY/diagram.vdx bằng đường dẫn thực tế của tệp bạn muốn xem trước.

Tạo Page Stream cho việc tạo xem trước

Triển khai ICreatePageStream để cho thư viện biết nơi và cách lưu mỗi hình ảnh trang.

import java.io.FileOutputStream;
import com.groupdocs.watermark.options.ICreatePageStream;
import java.io.OutputStream;

public class FeatureCreatePageStream implements ICreatePageStream {
    private final String fileNameTemplate;

    public FeatureCreatePageStream(String outputDirectory) {
        this.fileNameTemplate = outputDirectory + "/page%s.png";
    }

    @Override
    public OutputStream createPageStream(int pageNumber) {
        String fileName = String.format(this.fileNameTemplate, pageNumber);
        try {
            return new FileOutputStream(fileName);
        } catch (Exception ex) 
        {
            throw new RuntimeException(ex);
        }
    }
}

page%s.png là mẫu page stream java tự động đặt tên cho mỗi tệp xem trước (ví dụ, page1.png, page2.png).

Giải phóng Page Stream

Đóng luồng đúng cách để tránh rò rỉ bộ nhớ.

import com.groupdocs.watermark.options.IReleasePageStream;
import java.io.OutputStream;

public class FeatureReleasePageStream implements IReleasePageStream {
    @Override
    public void releasePageStream(int pageNumber, OutputStream pageStream) {
        try 
        {
            pageStream.close();
        } catch (Exception ex)
        {
            throw new RuntimeException(ex);
        }
    }
}

Tạo xem trước tài liệu

Bây giờ kết hợp mọi thứ và gọi generatePreview với preview options java.

import com.groupdocs.watermark.Watermarker;
import com.groupdocs.watermark.options.PreviewOptions;

public class FeatureGenerateDocumentPreview {
    public static void main(String[] args) {
        String inputDocumentPath = "YOUR_DOCUMENT_DIRECTORY/diagram.vdx";
        
        Watermarker watermarker = new Watermarker(inputDocumentPath);
        
        FeatureCreatePageStream createPageStream = new FeatureCreatePageStream("YOUR_OUTPUT_DIRECTORY");
        FeatureReleasePageStream releasePageStream = new FeatureReleasePageStream();
        
        PreviewOptions previewOptions = new PreviewOptions(createPageStream, releasePageStream);
        
        watermarker.generatePreview(previewOptions);
        
        watermarker.close();
    }
}
  • createPageStream xử lý việc tạo page stream java cho mỗi hình ảnh xem trước.
  • releasePageStream đảm bảo tài nguyên được giải phóng sau khi mỗi trang được ghi.

Ứng dụng thực tiễn

  • PDF Viewer Apps – hiển thị hình thu nhỏ xem trước trước khi mở toàn bộ tệp.
  • Content Management Systems – cho phép biên tập viên duyệt nhanh nội dung tài liệu.
  • Cloud Storage Services – tạo hình thu nhỏ ngay lập tức cho bất kỳ tệp nào được tải lên.

Các lưu ý về hiệu năng

  • Memory Usage – Sử dụng các giao diện stream để tránh tải toàn bộ tài liệu vào RAM.
  • I/O Optimization – Bao bọc FileOutputStream bằng BufferedOutputStream nếu bạn xử lý nhiều trang.
  • Batch Processing – Chạy việc tạo xem trước trong các luồng song song, mỗi luồng có một thể hiện Watermarker riêng.

Các vấn đề thường gặp & Giải pháp

Vấn đềNguyên nhânGiải pháp
OutOfMemoryErrorTài liệu lớn được tải toàn bộSử dụng các giao diện stream (như đã trình bày) để xử lý từng trang.
FileNotFoundExceptionĐường dẫn thư mục đầu ra không đúngKiểm tra xem YOUR_OUTPUT_DIRECTORY tồn tại và có quyền ghi.
Preview images are blankĐịnh dạng tệp không được hỗ trợĐảm bảo loại tài liệu được GroupDocs.Watermark hỗ trợ (ví dụ: PDF, DOCX, VDX).

Câu hỏi thường gặp

Q: Tôi có thể tạo xem trước cho tài liệu được bảo vệ bằng mật khẩu không?
A: Có. Tr overload nhận một hỗ trợ cho việc xem trước?**
A: PNG là mặc định, nhưng bạn có thể thay đổi phần mở rộng tệp trong FeatureCreatePageStream thành JPEG, BMP, v.v.

Q: Có thể giới hạn việc xem trước chỉ ở các trang cụ thể không?
A: Sử dụng PreviewOptions.setPageNumber(int pageNumber) để tạo xem trước một trang duy nhất.

Q: Thư viện có hoạt động trên Linux/macOS không?
A: Hoàn toàn có. GroupDocs.Watermark không phụ thuộc vào nền tảng miễn là có môi trường chạy Java.

Q: Làm thế nào để dọn dẹp các tệp tạm sau khi xử lý hàng loạt?
A: Xóa các tệp xem trước đã tạo thủ công hoặc triển khai một tác vụ dọn dẹp định kỳ.


Cập nhật lần cuối: 2026-02-03
Đã kiểm tra với: GroupDocs.Watermark Java 24.11
Tác giả: GroupDocs