Thư viện Ruby mã nguồn mở để tạo PDF từ HTML
Ruby PDF API cho phép các nhà phát triển hiển thị HTML / CSS và xuất ra dưới dạng PDF với chất lượng cao, Tạo tài liệu PDF từ tệp hoặc URL được cung cấp.
Các loại hình kinh doanh khác nhau tạo ra nhiều loại tài liệu hàng ngày. Hầu hết các tài liệu này chứa dữ liệu rất bí mật hoặc riêng tư cần được bảo vệ. Định dạng tài liệu di động (PDF) là một cách rất hữu ích và tiện lợi để giữ thông tin cá nhân của bạn an toàn khi chia sẻ trên web. PDFKit là một thư viện Ruby rất hữu ích cho phép các nhà phát triển phần mềm tạo các tệp PDF bằng mã HTML / CSS thuần túy.
Thư viện rất dễ sử dụng và sử dụng wkhtmltopdf trên chương trình phụ trợ, sử dụng WebKit để hiển thị HTML / CSS và xuất ra dưới dạng PDF với chất lượng cao. Thư viện rất linh hoạt và cho phép người dùng tạo tài liệu PDF từ một URL được cung cấp một cách dễ dàng. Thư viện đã bao gồm một số tính năng quan trọng để kết xuất tài liệu PDF như tạo PDF từ mã HTML, sửa đổi tệp PDF, thêm kiểu cho PDF, chèn đầu trang và chân trang, ngắt trang bảng và nhiều tính năng khác.
Thư viện đã cung cấp cho người dùng nhiều tùy chọn để kiểm soát cách nó tạo tệp PDF bên trong ứng dụng của họ. Bạn có thể định cấu hình các tùy chọn đó trên toàn cầu cũng như đặt chúng trên mỗi trang. Bạn có thể sử dụng các thẻ meta được đặt tên đặc biệt trên trang để kiểm soát cách HTML của trang được hiển thị thành PDF.
.
Bắt đầu với PDFKit
Để cài đặt PDFKit trên hệ thống của bạn, vui lòng chạy lệnh sau,
Cài đặt PDFKit với đá quý ruby
gem install pdfkit
Tạo PDF từ HTML qua Ruby
Thư viện Ruby mã nguồn mở PDFKit cho phép các nhà phát triển phần mềm tạo các tài liệu PDF từ mã HTML bên trong các ứng dụng của riêng họ. Bạn có thể sử dụng CSS để áp dụng các loại kiểu khác nhau cho mã của mình và sau đó có thể tạo tài liệu PDF từ đó. Bạn cũng có thể dễ dàng đặt kích thước của trang theo kích thước mặc định A4 được sử dụng. Bạn cũng có thể có nhiều loại tùy chọn khác nhau thông qua thẻ Meta. Cũng có thể chuyển cookie sang PDFKit để quét một trang web bằng cách sử dụng hàm băm.
Tạo tệp PDF qua PDFKit
# Generate PDF via Ruby
require 'pdfkit'
html = render_to_string(:layout => 'layouts/test_layout' , :action => print_form.html.erb")
kit = PDFKit.new(html)
send_data(kit.to_pdf, :filename => "Form.pdf", :type => 'application/pdf')
Bổ sung đầu trang và chân trang cho PDF
Thư viện PDFKit đã cung cấp hỗ trợ để thêm đầu trang và chân trang bên trong tài liệu PDF của họ chỉ với một vài dòng mã. Bạn có thể dễ dàng đặt lề của đầu trang và chân trang PDF và có thể áp dụng lề cho nó. Bạn có thể tạo động đầu trang và chân trang một cách dễ dàng. Hãy nhớ rằng thư viện chỉ chấp nhận một tệp hoặc URL. Nó sẽ không chấp nhận văn bản thô. Các liên kết bị hỏng phải được tránh nếu không sẽ không mang lại kết quả như mong muốn.
Tải và phân tích cú pháp dữ liệu PDF qua API Ruby
Thư viện PDF nguồn mở PDFKit đã bao gồm hỗ trợ tải và phân tích cú pháp các tệp PDF bên trong các ứng dụng Ruby. Theo khuyến nghị, việc tải dữ liệu từ tệp PDF rất dễ dàng. Các nhà phát triển cũng có thể phân tích cú pháp tệp PDF từ bộ nhớ. Rất hiệu quả để tải dữ liệu từ bộ nhớ, đặc biệt là đối với dữ liệu nhận được qua internet hoặc từ một thư viện khác. Tương tự như phân tích cú pháp, kết xuất cũng có thể được thực hiện đối với bộ nhớ hoặc tệp.
Phân tích cú pháp Trang Tiêu đề của Hướng dẫn PDF qua Ruby
# Render PDF Title Page via Ruby
const renderTitlePage = doc => {
const title = 'PDFKit Guide';
const author = 'By Devon Govett';
const version = `Version ${require('../package.json').version}`;
doc.font('fonts/AlegreyaSans-Light.ttf', 60);
doc.y = doc.page.height / 2 - doc.currentLineHeight();
doc.text(title, { align: 'center' });
const w = doc.widthOfString(title);
doc.h1Outline = doc.outline.addItem(title);
doc.fontSize(20);
doc.y -= 10;
doc.text(author, {
align: 'center',
indent: w - doc.widthOfString(author)
});
doc.font(styles.para.font, 10);
doc.text(version, {
align: 'center',
indent: w - doc.widthOfString(version)
});
doc.addPage();
};
Thêm văn bản vào các trang PDF hiện có qua Ruby
Thư viện PDFKit mã nguồn mở cung cấp cho các nhà phát triển phần mềm sức mạnh để thêm văn bản hoặc hình ảnh vào tệp PDF hiện có chỉ với một vài dòng mã Ruby. Nó đã bao gồm hỗ trợ cho nhiều tùy chọn để tùy chỉnh hiển thị văn bản đầu ra. Thư viện bao gồm hỗ trợ tạo kiểu văn bản, đo lường văn bản, danh sách dấu đầu dòng, 14 phông chữ tiêu chuẩn và hơn thế nữa. Nó cũng hỗ trợ gói dòng tự động; có nghĩa là văn bản sẽ được tự động bao bọc trong các lề trang và được đặt trong luồng tài liệu bên dưới bất kỳ văn bản nào trước đó.
Áp dụng kiểu văn bản đa dạng thức cho nội dung PDF qua PDFKit
# Rich Tex Support in PDF
doc.fillColor('green')
.text(lorem.slice(0, 500), {
width: 465,
continued: true
}).fillColor('red')
.text(lorem.slice(500));