HtmlToPdf API

API สำหรับแปลง HTML เป็น PDF
AmgCnt.Python.htmlToPdf(DataObject, Callback)
amgApi.coreLib.python.htmlToPdf(Object, Callback)
1. DataObject เป็น Object ของ HTML และ Options ต่างๆ
2. Callback เป็นฟังก์ชันสำหรับรอรับ object ผลลัพธ์การแปลง html เป็น pdf

ตัวอย่างการใช้งาน

AmgCnt.Python.htmlToPdf({
html: `
<div style="text-align: center;">Hi PDF</div>
`,
options: {
'css': ``,
'orientation': 'p',
'header-font-name': 'TH-SARABUN-PSK',
'margin-top': 10,
'margin-right': 8,
'margin-bottom': 10,
'margin-left': 8,
'footer-center': 'หน้า [page] ของ [toPage] หน้า',
'footer-font-size': 9,
'footer-spacing': 2,
},
dwn_file: 'file_name.pdf'
}, function(res) {
console.log(res);
})

DataObject จะมีโครงสร้างดังต่อไปนี้
html เป็นเนื้อหาที่จัดอยู่ในรูปแบบ html
options เป็น option object ที่กำหนดการแสดงผล HTML
dwn_file เป็นชื่อไฟล์ที่จะทำการตั้งให้ pdf (ต้องตามด้วย .pdf)

var DataObject = {
html: String,
options: OptionObject,
dwn_file: String
}

OptionObject ที่มีให้ใช้งาน
ชื่อ option ประเภทตัวแปร คำอธิบาย ค่าเริ่มต้น หมายเหตุ
css string css style ที่เสริมเข้าไปเพื่อควบคุมรูปแบบของข้อมูลก่อนการปริ้น -ใช้ word-wrap แทน break-word
-ไม่รองรับ CSS3
page-size string ขนาดหน้ากระดาษ
A3
A4
A5
Letter
A4 -ขึ้นต้นด้วยตัวใหญ่
orientation string การวางแนวของไฟล์ PDF
p คือแนวตั้ง
l คือแนวนอน
p
grayscale - ปรับ pdf ให้ออกมาเป็นขาวดำ -ไม่ใส่จะปริ้น pdf แบบมีสี
footer-left string ปริ้นช่วงซ้ายล่างของกระดาษทุกหน้า -ห้ามใช้ ' ในข้อความ
[page] จะถูกแทนที่ด้วยเลขหน้าปัจจุบัน
[toPage] จะถูกแทนที่ด้วยเลขหน้าทั้งหมด
footer-center string ปริ้นช่วงกลางล่างของกระดาษทุกหน้า ข้อจำกัดเดียวกับ footer-left
footer-right string ปริ้นช่วงขวาล่างของกระดาษทุกหน้า ข้อจำกัดเดียวกับ footer-left
footer-font-size number ขนาดของตัวหนังสือช่วงล่างของกระดาษ
footer-spacing number ขนาดของช่องว่างระหว่างเนื้อหาและตัวหนังสือช่วงล่างของกระดาษ ในหน่วย mm
footer-line - เพิ่มเส้นแนวนอนระหว่างเนื้อหาและตัวหนังสือช่วงล่างของกระดาษ -ไม่ใส่จะไม่ปริ้นเส้นลงใน pdf
header-left string ปริ้นช่วงซ้ายล่างของกระดาษทุกหน้า -ห้ามใช้ ' ในข้อความ
[page] จะถูกแทนที่ด้วยเลขหน้าปัจจุบัน
[toPage] จะถูกแทนที่ด้วยเลขหน้าทั้งหมด
header-center string ปริ้นช่วงกลางบนของกระดาษทุกหน้า ข้อจำกัดเดียวกับ header-left
header-right string ปริ้นช่วงขวาบนของกระดาษทุกหน้า ข้อจำกัดเดียวกับ header-left
header-font-size number, pixel ขนาดของตัวหนังสือช่วงบนของกระดาษ
header-spacing number, millimeter ขนาดของช่องว่างระหว่างเนื้อหาและตัวหนังสือช่วงบนของกระดาษ ในหน่วย mm
header-line - เพิ่มเส้นแนวนอนระหว่างเนื้อหาและตัวหนังสือช่วงบนของกระดาษ -ไม่ใส่จะไม่ปริ้นเส้นลงใน pdf
no-images ไม่ปริ้นรูปใดๆลงใน pdf -ไม่ใส่จะไม่ปริ้นรูปลงใน pdf
margin-top number, millimeter ระยะขอบกระดาษกับเนื้อหาด้านบน -อาจจะมีผลทำให้หัวกระดาษ ไม่ถูกพิมพ์ ให้ทำการปรับจูนค่าร่วมกับ option header-spacing
margin-right number, millimeter ระยะขอบกระดาษกับเนื้อหาด้านขวา 10
margin-bottom number, millimeter ระยะขอบกระดาษกับเนื้อหาด้านล่าง 10 -อาจจะมีผลทำให้หัวกระดาษ ไม่ถูกพิมพ์ ให้ทำการปรับจูนค่าร่วมกับ option footer-spacing
margin-left number, millimeter ระยะขอบกระดาษกับเนื้อหาด้านซ้าย