w-html2docx
v1.0.10
Published
A tool for docx2pdf.
Maintainers
Readme
w-html2docx
A tool for docx2pdf.
Documentation
To view documentation or get support, visit docs.
Core
w-html2docxis based on thewin32cominpython, and only run inWindows.
Installation
Using npm(ES6 module):
npm i w-html2docxExample:
Link: [dev source code]
import w from 'wsemi'
import WHtml2docx from './src/WHtml2docx.mjs'
//import WHtml2docx from 'w-html2docx/src/WHtml2docx.mjs'
//import WHtml2docx from 'w-html2docx'
async function test() {
let fpIn = `./test/ztmp.html`
let fpOut = `./test/ztmp.docx`
let opt = {
imgRatioWidthMax: 0.5,
}
let r = await WHtml2docx(fpIn, fpOut, opt)
console.log(r)
// => ok
w.fsDeleteFile(fpOut)
}
test()
.catch((err) => {
console.log('catch', err)
})外部提供docx模板要點
轉檔時以docx模板為基底產出文件,可透過opt.fpInTemp指定外部模板;未指定時依序使用./src/tmp.docx或./node_modules/w-html2docx/src/tmp.docx(套件內建模板)。
外部提供模板時須注意:
- 內容附加於模板文末:轉檔係將html內容(含格式)插入至模板既有內容之後再另存,故模板一般提供空白文件;模板內既有內容會保留於輸出文件開頭。
- 頁面設定由模板決定:輸出文件之紙張大小、邊界等頁面設定沿用模板;圖片縮放上限(滿版寬高)亦依模板版心(紙張大小扣除邊界)計算。
- 模板settings會帶入輸出文件:模板
word/settings.xml內之文件層級設定,轉檔後會保留於輸出docx。 - 建議帶入停用影像壓縮旗標:模板
word/settings.xml須含<w:doNotAutoCompressPictures/>,否則Word轉檔時會將寬圖(約超過1270px)自動降採樣至220ppi並轉存JPEG,導致圖內文字模糊。套件內建模板已含此旗標;外部模板可於Word開啟模板後,勾選[檔案 > 選項 > 進階 > 影像大小和品質 > 不壓縮檔案中的影像]再存檔,或直接編輯word/settings.xml加入該元素。
