<p>Mysql 데이터베이스에 저장된 데이터를 사용하여 Node js, Pdfkit 및 pdfkit-table을 사용하여 PDF 파일을 생성하려고 합니다. 데이터베이스의 레코드를 PDF 문서의 테이블로 인쇄해야 합니다. </p>
<p>다음 코드는 빈 PDF 파일을 생성합니다. 데이터가 포함된 PDF 파일이 생성되지 않는 이유를 해결하도록 도와주세요. </p>
<p>index.js 파일입니다.</p>
<pre class="brush:php;toolbar:false;">var express = require('express');
var 라우터 = express.Router();
var PDFDocument = require('pdfkit');
var orm = require('orm');
var PDFDoc = require("pdfkit-table");
router.use(orm.express("mysql://root:@localhost:/kirula_fashion", {
정의: 함수(db, 모델, 다음) {
models.news = db.define("원장", {
아이디 : 문자열,
날짜 : 문자열,
설명 : 문자열,
차변 : 문자열,
크레딧 : 문자열,
});
다음();
}
}));
router.get('/', function(req, res, next) {
var 결과 = req.models.news.find({
}, 함수(오류, 뉴스){
if(error) 오류 발생;
res.render('index', { news:news, title: '使用NodeJS生成PDF'
});
});
});
router.get('/pdf', function(req, res, next) {
var id = req.query.id;
const doc = 새 PDFDocument();
const docTable = 새로운 PDFDoc();
var 결과 = req.models.news.find({id: id}, function(error, newspost){
if(error) 오류 발생;
또 다른{
if(뉴스포스트.길이>0){
for(var i=0; i
데이터 옵션에서도 같은 문제가 있었지만 행 옵션의 경우 pdfkit-table이 잘 작동했습니다. 아마도 [{..},{...}]를 [[..],[.. .]]에 매핑하고 그런 다음 라인 옵션을 사용하세요