pdfkit如何在meteor js中检测循环中从页面结尾到添加页面的集合

pdfkit如何在meteor js中检测循环中从页面结尾到添加页面的集合,meteor,pdfkit,Meteor,Pdfkit,在pdfkit中,如何仅在mongodb对象的某个循环数组中的前一页已满(空白部分应首先填充,然后生成新页)时生成页面 使用pdfkit时,我要做的是使用一个名为ypos的垂直位置变量绘制所有视觉元素,该变量在我向下移动页面时递增,例如ypos+=20。假设我正在使用var doc=newpdfdocument({size:'A4',margin:20}),然后在文本可能超出页面边界的时刻,我检查ypos增加了多少如果(ypos>680){doc.addPage();ypos=50;} 但是,当

在pdfkit中,如何仅在mongodb对象的某个循环数组中的前一页已满(空白部分应首先填充,然后生成新页)时生成页面


使用pdfkit时,我要做的是使用一个名为
ypos
的垂直位置变量绘制所有视觉元素,该变量在我向下移动页面时递增,例如
ypos+=20。假设我正在使用
var doc=newpdfdocument({size:'A4',margin:20}),然后在文本可能超出页面边界的时刻,我检查ypos增加了多少<代码>如果(ypos>680){doc.addPage();ypos=50;}


但是,当您绘制某个对象,并且不确定该对象可能有多高,以及该对象是否在页面的当前
ypos
处超出页面边界时,就会出现问题。您可以做的一件事(这是一种令人讨厌的解决方案)是用白色绘制文本(因此它被绘制但不可见),然后检查
doc.y
的值,该值显示pdfkit上次绘制的垂直位置。如果它太低,创建一个新页面并在那里绘制,如果没有,则停留在您所在的页面上。

使用pdfkit时,我所做的是使用一个名为
ypos
的垂直位置变量绘制所有视觉元素,该变量在向下移动页面时递增,例如
ypos+=20。假设我正在使用
var doc=newpdfdocument({size:'A4',margin:20}),然后在文本可能超出页面边界的时刻,我检查ypos增加了多少<代码>如果(ypos>680){doc.addPage();ypos=50;}


但是,当您绘制某个对象,并且不确定该对象可能有多高,以及该对象是否在页面的当前
ypos
处超出页面边界时,就会出现问题。您可以做的一件事(这是一种令人讨厌的解决方案)是用白色绘制文本(因此它被绘制但不可见),然后检查
doc.y
的值,该值显示pdfkit上次绘制的垂直位置。如果太低,创建一个新页面并在那里绘制,如果没有,则停留在您所在的页面上。

您如何知道
ypos
的增量?我想这完全取决于您使用的字体大小和视觉元素之间的间距。我总是用不同的值做一些实验,直到间距刚好合适。不确定这是否回答了你的问题。(:是的。我想可能有一些规则可以知道它,但不管怎样,好吧。你怎么知道
ypos
的增量?我想这完全取决于你使用的字体大小和你想要的视觉元素之间的间距。我总是用不同的值进行一些实验,直到间距刚好合适。不确定这是否正确回答你的问题。(:是的。我想可能有一些规则知道它,但不管怎样还是可以的。