Hướng dẫn wkhtmltopdf java - wkhtmltopdf java
Hãy nhớ rằng hệ thống chạy mã Java của bạn phải cài đặt wkhtmltopdf cho bất cứ điều gì tôi đang nói ở đây để hoạt động ... Truy cập www.wkhtmltopdf.org và tải xuống phiên bản bạn cần. Tôi biết điều này đã cũ và bây giờ bạn chắc chắn đã tìm ra điều này, nhưng nếu bạn không muốn sử dụng JNI hoặc JNA để làm điều này, bạn có thể thực hiện nó khá đơn giản thông qua các cuộc gọi .Exec trên hệ thống của bạn. Dưới đây là một lớp thực hiện chính xác những gì bạn muốn mà không cần phải làm phiền với JNI hoặc JNA:
Bạn phải bằng cách nào đó liên kết với một trong các luồng đầu vào để quá trình chạy. Đó có thể là đầu vào hoặc lỗi. Trong trường hợp này vì tôi vừa viết vào một tập tin, tôi đã đi trước và chỉ kết nối hệ thống.err với các lỗi từ quy trình WKHTML. Làm thế nào để chỉ sử dụng các luồng! Nếu bạn muốn nguồn HTML đến từ luồng và/hoặc PDF đích sẽ được ghi vào luồng thì bạn sẽ sử dụng '-' cho "URI" thay vì chuỗi thông thường.'-' for the "URI" instead of a regular string. Ví dụ: Sau đó, bạn có thể nắm bắt các luồng đầu vào và đầu ra và viết và đọc khi cần thiết. Nếu bạn chỉ kết nối với một luồng thì bạn không cần sử dụng các luồng và bạn sẽ không nhận được một kịch bản trong đó các luồng đang chờ đợi nhau vô tận. Tuy nhiên, nếu bạn đang sử dụng một luồng cho cả nguồn HTML và đích PDF, thì bạn phải sử dụng các luồng để quá trình hoàn thành. Lưu ý: Hãy nhớ rằng OutputStream phải được xóa và đóng cho wkhtmltopdf để bắt đầu xây dựng pdf và phát trực tuyến kết quả! Thí dụ:
Các luồng rất tốt khi bạn đang chạy điều này trên máy chủ web và muốn tránh tạo các tệp HTML hoặc PDF tạm thời, bạn chỉ cần truyền phát lại phản hồi bằng cách chụp và ghi vào luồng phản hồi HTTP. Tôi hi vọng nó sẽ giúp ích cho mọi người!
quá trình.waitfor ();
|