Ví dụ về Pdfkit nodejs
boleto. getLocaisDePagamento(). forEach(function(localDePagamento, indice) { if (indice > 1) { return; } pdf. phông chữ ('bình thường'). kích thước phông chữ (args. tamanhoDaFonteDoTitulo). văn bản (localDePagamento, args. ajusteX + margemDoSegundoBloco, lập luận. ajusteY + (terceiraLinha + 2 - args. tamanhoDaFonte + (chỉ số * args. tamanhoDaFonte)), { lineBreak. sai, chiều rộng. 400, căn chỉnh. 'bên trái' });
PDFKit là một thư viện tạo tài liệu PDF cho Node và trình duyệt giúp tạo các tài liệu phức tạp, nhiều trang, có thể in được dễ dàng. API bao gồm khả năng kết nối và bao gồm cả chức năng cấp thấp cũng như trừu tượng cho chức năng cấp cao hơn. API PDFKit được thiết kế đơn giản, vì vậy việc tạo các tài liệu phức tạp thường đơn giản bằng một vài lệnh gọi hàm Show Kiểm tra một số tài liệu và ví dụ để xem cho chính mình. Bạn cũng có thể đọc hướng dẫn dưới dạng PDF tự tạo với đầu ra mẫu được hiển thị nội tuyến. Nếu bạn muốn xem nó được tạo như thế nào, hãy xem README trong thư mục tài liệu Bạn cũng có thể dùng thử bản demo tương tác trong trình duyệt của PDFKit tại đây Cài đặtCài đặt sử dụng trình quản lý gói npm. Chỉ cần gõ lệnh sau sau khi cài đặt npm
Đặc trưng
Sắp có
Thí dụconst PDFDocument = require('pdfkit'); const fs = require('fs'); // Create a document const doc = new PDFDocument(); // Pipe its output somewhere, like to a file or HTTP response // See below for browser usage doc.pipe(fs.createWriteStream('output.pdf')); // Embed a font, set the font size, and render some text doc .font('fonts/PalatinoBold.ttf') .fontSize(25) .text('Some text with an embedded font!', 100, 100); // Add an image, constrain it to a given size, and center it vertically and horizontally doc.image('path/to/image.png', { fit: [250, 300], align: 'center', valign: 'center' }); // Add another page doc .addPage() .fontSize(25) .text('Here is some vector graphics...', 100, 100); // Draw a triangle doc .save() .moveTo(100, 150) .lineTo(100, 250) .lineTo(200, 250) .fill('#FF3300'); // Apply some transforms and render an SVG path with the 'even-odd' fill rule doc .scale(0.6) .translate(470, -380) .path('M 250,75 L 323,301 131,161 369,161 177,301 z') .fill('red', 'even-odd') .restore(); // Add some text with annotations doc .addPage() .fillColor('blue') .text('Here is a link!', 100, 100) .underline(100, 100, 160, 27, { color: '#0000FF' }) .link(100, 100, 160, 27, 'http://google.com/'); // Finalize PDF file doc.end(); Đầu ra PDF từ ví dụ này (với một vài bổ sung) cho thấy sức mạnh của PDFKit — tạo ra các tài liệu phức tạp với một lượng mã rất nhỏ. Để biết thêm thông tin, hãy xem thư mục Sử dụng trình duyệtCó ba cách để sử dụng PDFKit trong trình duyệt
Ngoài PDFKit, bạn sẽ cần một nơi nào đó để truyền đầu ra tới. HTML5 có đối tượng Blob có thể được sử dụng để lưu trữ dữ liệu nhị phân và nhận URL tới dữ liệu này để hiển thị đầu ra PDF bên trong khung nội tuyến hoặc tải lên máy chủ, v.v. Để lấy Blob từ đầu ra của PDFKit, bạn có thể sử dụng mô-đun blob-stream Ví dụ sau sử dụng Browserify hoặc webpack để tải // require dependencies const PDFDocument = require('pdfkit'); const blobStream = require('blob-stream'); // create a document the same way as above const doc = new PDFDocument(); // pipe the document to a blob const stream = doc.pipe(blobStream()); // add your content to the document here, as usual // get a blob when you are done doc.end(); stream.on('finish', function() { // get a blob you can do whatever you like with const blob = stream.toBlob('application/pdf'); // or get a blob URL for display in the browser const url = stream.toBlobURL('application/pdf'); iframe.src = url; }); Bạn có thể xem bản demo tương tác trong trình duyệt của PDFKit tại đây Lưu ý rằng để Trình duyệt dự án bằng PDFKit, bạn cần cài đặt mô-đun const PDFDocument = require('pdfkit'); const fs = require('fs'); // Create a document const doc = new PDFDocument(); // Pipe its output somewhere, like to a file or HTTP response // See below for browser usage doc.pipe(fs.createWriteStream('output.pdf')); // Embed a font, set the font size, and render some text doc .font('fonts/PalatinoBold.ttf') .fontSize(25) .text('Some text with an embedded font!', 100, 100); // Add an image, constrain it to a given size, and center it vertically and horizontally doc.image('path/to/image.png', { fit: [250, 300], align: 'center', valign: 'center' }); // Add another page doc .addPage() .fontSize(25) .text('Here is some vector graphics...', 100, 100); // Draw a triangle doc .save() .moveTo(100, 150) .lineTo(100, 250) .lineTo(200, 250) .fill('#FF3300'); // Apply some transforms and render an SVG path with the 'even-odd' fill rule doc .scale(0.6) .translate(470, -380) .path('M 250,75 L 323,301 131,161 369,161 177,301 z') .fill('red', 'even-odd') .restore(); // Add some text with annotations doc .addPage() .fillColor('blue') .text('Here is a link!', 100, 100) .underline(100, 100, 160, 27, { color: '#0000FF' }) .link(100, 100, 160, 27, 'http://google.com/'); // Finalize PDF file doc.end();0, vì vậy nó không được cài đặt theo mặc định cho người dùng Node. Nếu bạn quên cài đặt, Browserify sẽ in thông báo lỗi Làm cách nào để sử dụng PDFKit trong Nút?Chỉ cần yêu cầu mô-đun pdfkit trong tệp nguồn JavaScript của bạn và tạo một phiên bản của lớp PDFDocument . const PDFDocument = require('pdfkit'); .
Làm cách nào để tạo PDF bằng NodeJS?Làm theo các bước sau để chuyển đổi HTML sang PDF . Bước 1 - cài đặt gói tạo pdf bằng lệnh sau. . Bước 2 - Thêm các gói cần thiết và đọc mẫu HTML. . Bước 3 - Tạo Mẫu HTML của bạn. . Bước 4 - Cung cấp định dạng và định hướng theo nhu cầu của bạn. . Bước 5 - Cung cấp HTML, dữ liệu người dùng và đường dẫn PDF cho đầu ra Làm cách nào để chuyển đổi đối tượng PDFKit thành bộ đệm bằng NodeJS?let pdf = new pdfkit(); . on('dữ liệu', bộ đệm. đẩy. bind(buffer)); . .
PDFKit hoạt động như thế nào?PDFKit là thư viện tạo tài liệu PDF cho Node và trình duyệt giúp tạo các tài liệu phức tạp, nhiều trang, có thể in được dễ dàng . API bao gồm khả năng kết nối và bao gồm cả chức năng cấp thấp cũng như trừu tượng cho chức năng cấp cao hơn. |