ฟีเจอร์ขั้นสูง ครับ/ค่ะ
การแบ่งหน้า ครับ/ค่ะ
1. การอัปเดตเลขหน้า ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
เพียงแค่แทรกในโปรแกรม Office ของคุณได้เลยครับ/ค่ะ
ตัวอย่าง ครับ/ค่ะ
ใน Microsoft Word:
- ใช้ฟังก์ชัน “แทรก → เลขหน้า” ครับ/ค่ะ
ใน LibreOffice:
- ใช้ฟังก์ชัน “แทรก → เขตข้อมูล → เลขหน้า” ครับ/ค่ะ
ผลลัพธ์ ครับ/ค่ะ
ในรายงานที่สร้างขึ้น เลขหน้าของแต่ละหน้าจะอัปเดตโดยอัตโนมัติครับ/ค่ะ
2. การสร้างสารบัญ ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
เพียงแค่แทรกในโปรแกรม Office ของคุณได้เลยครับ/ค่ะ
ตัวอย่าง ครับ/ค่ะ
ใน Microsoft Word:
- ใช้ฟังก์ชัน “แทรก → ดัชนีและตาราง → สารบัญ” ครับ/ค่ะ
ใน LibreOffice:
- ใช้ฟังก์ชัน “แทรก → สารบัญและดัชนี → สารบัญ, ดัชนี หรือบรรณานุกรม” ครับ/ค่ะ
ผลลัพธ์ ครับ/ค่ะ
สารบัญของรายงานที่สร้างขึ้นจะอัปเดตโดยอัตโนมัติตามเนื้อหาของเอกสารครับ/ค่ะ
3. การทำซ้ำส่วนหัวตาราง ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
เพียงแค่แทรกในโปรแกรม Office ของคุณได้เลยครับ/ค่ะ
ตัวอย่าง ครับ/ค่ะ
ใน Microsoft Word:
- คลิกขวาที่ส่วนหัวตาราง → คุณสมบัติของตาราง → ทำเครื่องหมายที่ “ทำซ้ำเป็นแถวส่วนหัวที่ด้านบนของแต่ละหน้า” ครับ/ค่ะ
ใน LibreOffice:
- คลิกขวาที่ส่วนหัวตาราง → คุณสมบัติของตาราง → แท็บการไหลของข้อความ → ทำเครื่องหมายที่ “ทำซ้ำส่วนหัว” ครับ/ค่ะ
ผลลัพธ์ ครับ/ค่ะ
เมื่อตารางมีหลายหน้า ส่วนหัวตารางจะแสดงซ้ำที่ด้านบนของแต่ละหน้าโดยอัตโนมัติครับ/ค่ะ
การทำให้เป็นสากล (i18n) ครับ/ค่ะ
1. การแปลข้อความแบบ Static ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
ใช้แท็ก {t(ข้อความ)} เพื่อทำให้ข้อความแบบ Static เป็นสากลครับ/ค่ะ:
ตัวอย่าง ครับ/ค่ะ
ในเทมเพลต:
ข้อมูล JSON หรือพจนานุกรมการแปลภาษาภายนอก (เช่น สำหรับ "fr-fr") จะมีคำแปลที่เกี่ยวข้องให้ เช่น "meeting" → "rendez-vous" และ "apples" → "Pommes" ครับ/ค่ะ
ผลลัพธ์ ครับ/ค่ะ
เมื่อสร้างรายงาน ข้อความจะถูกแทนที่ด้วยคำแปลที่เกี่ยวข้องตามภาษาเป้าหมายครับ/ค่ะ
2. การแปลข้อความแบบ Dynamic ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
สำหรับเนื้อหาข้อมูล สามารถใช้ตัวจัดรูปแบบ :t ได้ครับ/ค่ะ เช่น:
{d.id:ifEQ(2):show({t(monday)}):elseShow({t(tuesday)})}
ตัวอย่าง ครับ/ค่ะ
ในเทมเพลต:
{d.id:ifEQ(2):show({t(monday)}):elseShow({t(tuesday)})}
ข้อมูล JSON และพจนานุกรมการแปลภาษาจะมีคำแปลที่เหมาะสมให้ครับ/ค่ะ
ผลลัพธ์ ครับ/ค่ะ
ตามเงื่อนไขที่กำหนด ผลลัพธ์ที่ได้จะเป็น “lundi” หรือ “mardi” (โดยใช้ภาษาเป้าหมายเป็นตัวอย่าง) ครับ/ค่ะ
การจับคู่คีย์-ค่า ครับ/ค่ะ
1. การแปลง Enum (:convEnum) ครับ/ค่ะ
ไวยากรณ์ ครับ/ค่ะ
{data:convEnum(enumName)}
ตัวอย่างเช่น:
0:convEnum('ORDER_STATUS')
ตัวอย่าง ครับ/ค่ะ
ในตัวอย่าง API options มีการส่งค่าดังนี้ครับ/ค่ะ:
{
"enum": {
"ORDER_STATUS": ["pending", "sent", "delivered"]
}
}
ในเทมเพลต:
0:convEnum('ORDER_STATUS')
ผลลัพธ์ ครับ/ค่ะ
จะแสดงผลเป็น “pending” ครับ/ค่ะ หากดัชนีอยู่นอกช่วงของ Enum จะแสดงค่าเดิมออกมา
รูปภาพแบบ Dynamic ครับ/ค่ะ
INFO
ตอนนี้รองรับไฟล์ประเภท XLSX และ DOCX ครับ/ค่ะ
:::
คุณสามารถแทรก "รูปภาพแบบ Dynamic" ลงในเทมเพลตเอกสารได้ครับ/ค่ะ ซึ่งหมายความว่ารูปภาพตัวยึดตำแหน่งในเทมเพลตจะถูกแทนที่ด้วยรูปภาพจริงโดยอัตโนมัติเมื่อมีการเรนเดอร์ตามข้อมูล กระบวนการนี้ง่ายมากครับ/ค่ะ เพียงแค่:
-
แทรกรูปภาพชั่วคราวเพื่อใช้เป็นตัวยึดตำแหน่ง
-
แก้ไข "ข้อความแสดงแทน (Alt Text)" ของรูปภาพนั้นเพื่อตั้งค่าป้ายกำกับฟิลด์
-
เรนเดอร์เอกสาร แล้วระบบจะแทนที่ด้วยรูปภาพจริงโดยอัตโนมัติ
ด้านล่างนี้ เราจะอธิบายวิธีการใช้งานสำหรับไฟล์ DOCX และ XLSX โดยใช้ตัวอย่างที่ชัดเจนครับ/ค่ะ
การแทรกรูปภาพแบบ Dynamic ในไฟล์ DOCX ครับ/ค่ะ
การแทนที่รูปภาพเดี่ยว ครับ/ค่ะ
- เปิดเทมเพลต DOCX ของคุณ แล้วแทรกรูปภาพชั่วคราว (จะเป็นรูปภาพตัวยึดตำแหน่งใดก็ได้ครับ/ค่ะ เช่น รูปภาพสีน้ำเงินล้วน)
:::info
คำแนะนำเกี่ยวกับรูปแบบรูปภาพ
- ปัจจุบัน รูปภาพตัวยึดตำแหน่งรองรับเฉพาะไฟล์ PNG เท่านั้นครับ/ค่ะ เราแนะนำให้ใช้รูปภาพตัวอย่างที่เราเตรียมไว้ให้ เช่น รูปภาพสีน้ำเงินล้วน
- รูปภาพที่ต้องการเรนเดอร์รองรับเฉพาะไฟล์ PNG, JPG, JPEG เท่านั้นครับ/ค่ะ รูปภาพประเภทอื่นอาจเรนเดอร์ไม่สำเร็จ
คำแนะนำเกี่ยวกับขนาดรูปภาพ
ไม่ว่าจะเป็น DOCX หรือ XLSX ขนาดของรูปภาพที่เรนเดอร์ขั้นสุดท้ายจะใช้ขนาดเดียวกับรูปภาพชั่วคราวในเทมเพลตครับ/ค่ะ นั่นหมายความว่ารูปภาพที่ถูกแทนที่จริงจะถูกปรับขนาดโดยอัตโนมัติให้เท่ากับขนาดของรูปภาพตัวยึดตำแหน่งที่คุณแทรกไว้ หากคุณต้องการให้รูปภาพที่เรนเดอร์มีขนาด 150×150 โปรดใช้รูปภาพชั่วคราวในเทมเพลตและปรับขนาดให้เป็นขนาดดังกล่าวครับ/ค่ะ
- คลิกขวาที่รูปภาพนี้ แก้ไข "ข้อความแสดงแทน (Alt Text)" แล้วกรอกป้ายกำกับฟิลด์รูปภาพที่คุณต้องการแทรก เช่น
{d.imageUrl} ครับ/ค่ะ:

- ใช้ข้อมูลตัวอย่างด้านล่างเพื่อทำการเรนเดอร์ครับ/ค่ะ:
{
"name": "Apple",
"imageUrl": "https://images.pexels.com/photos/206959/pexels-photo-206959.jpeg"
}
- หลังจากเรนเดอร์แล้ว รูปภาพชั่วคราวจะถูกแทนที่ด้วยรูปภาพจริงครับ/ค่ะ:

การแทนที่รูปภาพหลายรูปด้วยการวนซ้ำ ครับ/ค่ะ
หากคุณต้องการแทรกกลุ่มรูปภาพในเทมเพลต เช่น รายการสินค้า คุณสามารถทำได้โดยใช้วิธีการวนซ้ำครับ/ค่ะ ขั้นตอนมีดังนี้:
- สมมติว่าข้อมูลของคุณมีดังนี้ครับ/ค่ะ:
{
"products": [
{
"name": "Apple",
"imageUrl": "https://images.pexels.com/photos/206959/pexels-photo-206959.jpeg"
},
{
"name": "Banana",
"imageUrl": "https://images.pexels.com/photos/61127/pexels-photo-61127.jpeg"
}
]
}
- ตั้งค่าพื้นที่วนซ้ำในเทมเพลต DOCX และแทรกรูปภาพชั่วคราวในแต่ละรายการที่วนซ้ำ โดยตั้งค่าข้อความแสดงแทน (Alt Text) เป็น
{d.products[i].imageUrl} ดังที่แสดงด้านล่างนี้ครับ/ค่ะ:

- หลังจากเรนเดอร์แล้ว รูปภาพชั่วคราวทั้งหมดจะถูกแทนที่ด้วยรูปภาพจากข้อมูลที่เกี่ยวข้องครับ/ค่ะ:

การแทรกรูปภาพแบบ Dynamic ในไฟล์ XLSX ครับ/ค่ะ
วิธีการใช้งานในเทมเพลต Excel (XLSX) โดยพื้นฐานแล้วจะเหมือนกันครับ/ค่ะ เพียงแต่มีข้อควรทราบดังนี้:
- หลังจากแทรกรูปภาพแล้ว โปรดตรวจสอบให้แน่ใจว่าคุณเลือก "รูปภาพภายในเซลล์" ไม่ใช่รูปภาพที่ลอยอยู่เหนือเซลล์ครับ/ค่ะ

- หลังจากเลือกเซลล์แล้ว ให้คลิกเพื่อดู "ข้อความแสดงแทน (Alt Text)" เพื่อกรอกป้ายกำกับฟิลด์ เช่น
{d.imageUrl} ครับ/ค่ะ
บาร์โค้ด ครับ/ค่ะ
INFO
ตอนนี้รองรับไฟล์ประเภท XLSX และ DOCX ครับ/ค่ะ
การสร้างบาร์โค้ด (เช่น QR Code) ครับ/ค่ะ
การสร้างบาร์โค้ดทำงานในลักษณะเดียวกับการสร้างรูปภาพแบบ Dynamic ครับ/ค่ะ โดยมีเพียงสามขั้นตอนเท่านั้น:
-
แทรกรูปภาพชั่วคราวในเทมเพลตเพื่อระบุตำแหน่งของบาร์โค้ด
-
แก้ไข "ข้อความแสดงแทน (Alt Text)" ของรูปภาพ และกรอกป้ายกำกับฟิลด์รูปแบบบาร์โค้ด เช่น {d.code:barcode(qrcode)} โดยที่ qrcode คือประเภทของบาร์โค้ด (ดูรายการที่รองรับด้านล่าง) ครับ/ค่ะ

- หลังจากเรนเดอร์แล้ว รูปภาพตัวยึดตำแหน่งจะถูกแทนที่ด้วยรูปภาพบาร์โค้ดที่เกี่ยวข้องโดยอัตโนมัติครับ/ค่ะ:

ประเภทบาร์โค้ดที่รองรับ ครับ/ค่ะ
| ชื่อบาร์โค้ด | ประเภท |
|---|
| QR Code | qrcode |