כך נייצר קובץ html עם page-breaks

נניח שיש לנו אתר עם דף מידע שהמבקר באתר ירצה להדפיס. לפעמים התוצאה תהיה שטבלה אחת תהיה חתוכה לשניים בין שני דפים.
אנחנו לעומת זאת רוצים לחלק בצורה דינמית את הדף של האתר כדי שאלמנט של טבלה למשל לא יחצה דף (או div או כל דבר אחר).
להלן סקריפט ב javascript שמודד את המיקום הנוכחי של אלמנטים ובמידה ואחד האלמנטים חותך דף, מכניס לפניו page-break.

אנחנו צריכים קודם לבחור את האלמנט שלפיו מחלקים את הדפים. במקרה הזה אני מניח שיש רשימה של divs עם תכנים שונים.


var pageheight = 800;
var pagePos = 0;
var pageTot = pageheight + pagePos;

var blocks = document.getElementsByTagName('div');
var count = blocks.length;

for(var i = 0; i < blocks.length; i++){


for(var i = 0; i < count; i++){

if(i != (count-1)){
var height = 0;
var block = new Object();
block.top = blocks[i].offsetTop;
block.bottom = blocks[i+1].offsetTop;

if(pageTot > block.top && pageTot < block.bottom){

/*blocks[i].previousSibling.setAttribute('style','page-break-after: always;');*/

blocks[i].previousSibling.style.pageBreakAfter = 'always';
pageTot += pageheight;


}
}
}
}




את החלוקה הזאת אפשר להכניס בסוף דף ה html.

Post a Comment

Previous Post Next Post