การพิมพ์เอกสารจากเทมเพลต
This feature is provided by the commercial plugin «พิมพ์เทมเพลต», please purchase to use
บทนำ
ปลั๊กอินการพิมพ์เอกสารจากเทมเพลตช่วยให้คุณสามารถออกแบบเทมเพลตใน Word, Excel และ PowerPoint (รองรับไฟล์นามสกุล .docx, .xlsx, .pptx) โดยกำหนดตัวยึดตำแหน่ง (placeholders) และโครงสร้างเชิงตรรกะ (logical structures) ในเทมเพลต เพื่อสร้างไฟล์ในรูปแบบที่กำหนดไว้ล่วงหน้าได้แบบไดนามิก เช่น ไฟล์ .docx, .xlsx, .pptx และ PDF ครับ/ค่ะ สามารถนำไปประยุกต์ใช้ได้อย่างกว้างขวางในการสร้างเอกสารทางธุรกิจหลากหลายประเภท เช่น ใบเสนอราคา, ใบแจ้งหนี้, สัญญา และอื่นๆ ครับ/ค่ะ
คุณสมบัติหลัก
- รองรับหลายรูปแบบ: ใช้งานร่วมกับเทมเพลต Word, Excel และ PowerPoint เพื่อตอบสนองความต้องการในการสร้างเอกสารที่หลากหลาย
- การเติมข้อมูลแบบไดนามิก: เติมและสร้างเนื้อหาเอกสารโดยอัตโนมัติผ่านตัวยึดตำแหน่ง (placeholders) และโครงสร้างเชิงตรรกะ (logical structures)
- การจัดการเทมเพลตที่ยืดหยุ่น: รองรับการเพิ่ม, แก้ไข, ลบ และจัดหมวดหมู่เทมเพลต เพื่อให้ง่ายต่อการบำรุงรักษาและการใช้งาน
- ไวยากรณ์เทมเพลตที่หลากหลาย: รองรับไวยากรณ์เทมเพลตหลายรูปแบบ เช่น การแทนที่พื้นฐาน, การเข้าถึงอาร์เรย์, การวนซ้ำ (loops) และการแสดงผลแบบมีเงื่อนไข เพื่อตอบสนองความต้องการในการสร้างเอกสารที่ซับซ้อน
- รองรับ Formatter: มีฟังก์ชันการแสดงผลแบบมีเงื่อนไข, การจัดรูปแบบวันที่, การจัดรูปแบบตัวเลข และอื่นๆ เพื่อเพิ่มความสามารถในการอ่านและความเป็นมืออาชีพของเอกสาร
- การส่งออกที่มีประสิทธิภาพ: รองรับการสร้างไฟล์ PDF โดยตรง เพื่อความสะดวกในการแบ่งปันและพิมพ์
การติดตั้ง
การติดตั้งปลั๊กอิน
โปรดดูที่ การติดตั้งและอัปเกรดปลั๊กอินเชิงพาณิชย์ ครับ/ค่ะ
การติดตั้ง LibreOffice (ไม่บังคับ)
การสร้างไฟล์ PDF จำเป็นต้องติดตั้ง LibreOffice ครับ/ค่ะ โปรดดาวน์โหลดได้จากเว็บไซต์ทางการ สำหรับเวอร์ชัน Docker คุณสามารถสร้างสคริปต์ได้โดยตรงในไดเรกทอรี ./storage/scripts ครับ/ค่ะ
mkdir ./storage/scripts
cd ./storage/scripts
vim install-libreoffice.sh
เนื้อหาของไฟล์ install-libreoffice.sh มีดังนี้ครับ/ค่ะ:
#!/bin/bash
# Define variables
INSTALL_DIR="/opt/libreoffice24.8"
DOWNLOAD_URL="https://downloadarchive.documentfoundation.org/libreoffice/old/24.8.5.2/deb/x86_64/LibreOffice_24.8.5.2_Linux_x86-64_deb.tar.gz"
# Check if LibreOffice is already installed
if [ -d "$INSTALL_DIR" ]; then
echo "LibreOffice is already installed, skipping installation."
exit 0
fi
# Update APT sources
tee /etc/apt/sources.list > /dev/null <<EOF
deb http://mirrors.aliyun.com/debian/ bookworm main contrib non-free
deb-src http://mirrors.aliyun.com/debian/ bookworm main contrib non-free
deb http://mirrors.aliyun.com/debian-security/ bookworm-security main contrib non-free
deb-src http://mirrors.aliyun.com/debian-security/ bookworm-security main contrib non-free
deb http://mirrors.aliyun.com/debian/ bookworm-updates main contrib non-free
deb-src http://mirrors.aliyun.com/debian/ bookworm-updates main contrib non-free
deb http://mirrors.aliyun.com/debian/ bookworm-backports main contrib non-free
deb-src http://mirrors.aliyun.com/debian/ bookworm-backports main contrib non-free
EOF
# Update APT and install dependencies
apt-get update
apt-get install -y \
libfreetype6 \
fontconfig \
libgssapi-krb5-2 \
libxml2 \
libnss3 \
libdbus-1-3 \
libcairo2 \
libxslt1.1 \
libglib2.0-0 \
libcups2 \
libx11-xcb1 \
fonts-liberation \
fonts-noto-cjk \
wget
rm -rf /var/lib/apt/lists/*
cd /app/nocobase/storage/scripts
# Download and install LibreOffice if not already present
if [ ! -d "./libreoffice" ]; then
rm -rf libreoffice.tar.gz
wget --no-check-certificate -O libreoffice.tar.gz $DOWNLOAD_URL
if [ $? -ne 0 ]; then
echo "Failed to download LibreOffice."
exit 1
fi
rm -rf libreoffice && mkdir libreoffice
tar -zxvf libreoffice.tar.gz -C ./libreoffice --strip-components=1
if [ $? -ne 0 ]; then
echo "Failed to extract LibreOffice."
exit 1
fi
fi
# Install LibreOffice
dpkg -i libreoffice/DEBS/*.deb
ln -s /opt/libreoffice24.8/program/soffice.bin /usr/bin/libreoffice
libreoffice --version
if [ $? -ne 0 ]; then
echo "Failed to install LibreOffice."
exit 1
fi
echo "LibreOffice installation completed successfully."
รีสตาร์ทคอนเทนเนอร์ app ครับ/ค่ะ:
docker compose restart app
# ดูบันทึก
docker compose logs app
ตรวจสอบว่าติดตั้งสำเร็จหรือไม่:
$ docker compose exec app bash -c "libreoffice --version"
LibreOffice 24.8.4.2 bb3cfa12c7b1bf994ecc5649a80400d06cd71002