需要將一個文件夾下的多個md文件轉(zhuǎn)化為PDF
下載安裝pandoc
官網(wǎng)下載地址:Pandoc ,下載位置如下圖。
下載后按照默認(rèn)文件路徑安裝完成
使用everything軟件查找pandoc.exe文件路徑,如下圖:
安裝完成之后就可以在cmd窗口或Windows power shell中使用pandoc指令了,例如:
pandoc test.md -o test.pdf #將test.md轉(zhuǎn)化為test.pdf
通過bat腳本進(jìn)行批量轉(zhuǎn)化
編寫bat腳本
bat腳本示例如下:
@echo off
setlocal enabledelayedexpansion
set "PANDOC_PATH=path\to\pandoc.exe" //將"path\to\pandoc.exe"替換為你的Pandoc可執(zhí)行文件的路徑
set "INPUT_FOLDER=path\to\input\folder" //將"path\to\input\folder"替換為你的Markdown文件所在的文件夾路徑
set "OUTPUT_FOLDER=path\to\output\folder" //將"path\to\output\folder"替換為你希望保存PDF文件的文件夾路徑
for %%F in ("%INPUT_FOLDER%\*.md") do (
set "INPUT_FILE=%%~F"
set "OUTPUT_FILE=!OUTPUT_FOLDER!\%%~nF.pdf"
"%PANDOC_PATH%" "!INPUT_FILE!" -o "!OUTPUT_FILE!"
)
echo Conversion completed.
pause
雙擊執(zhí)行bat文件即可
報(bào)錯
雙擊執(zhí)行上面的bat文件會報(bào)錯,報(bào)錯信息如下:
Error producing PDF. ! Package inputenc Error: Unicode character 絎?
pandoc.exe: : hPutChar: permission denied (Permission denied)
解決
報(bào)錯原因是markdown文件中有中文,為了支持中文,我們需要生成一個自己的tex模板。
將默認(rèn)模板輸出成template.tex。
pandoc -D latex > template.tex # -D: print-default-template
使用vscode打開生成的template.tex,在400多行的document
之前加一行usepackage
。ctex
包能夠提供中文支持。
然后,打開的template.tex在vscode右下角會顯示其編碼格式,點(diǎn)擊,選擇Save With Encoding,選擇UTF-8。不更換編碼格式的話會導(dǎo)致pandoc不能正確讀取。文章來源:http://www.zghlxwxcb.cn/news/detail-539156.html
最后需要在pandoc中指定模板和中文友好的引擎--template=template.tex --pdf-engine=xelatex
文章來源地址http://www.zghlxwxcb.cn/news/detail-539156.html
最終bat版本
@echo off
setlocal enabledelayedexpansion
set "PANDOC_PATH=path\to\pandoc.exe" //將"path\to\pandoc.exe"替換為你的Pandoc可執(zhí)行文件的路徑
set "INPUT_FOLDER=path\to\input\folder" //將"path\to\input\folder"替換為你的Markdown文件所在的文件夾路徑
set "OUTPUT_FOLDER=path\to\output\folder" //將"path\to\output\folder"替換為你希望保存PDF文件的文件夾路徑
for %%F in ("%INPUT_FOLDER%\*.md") do (
set "INPUT_FILE=%%~F"
set "OUTPUT_FILE=!OUTPUT_FOLDER!\%%~nF.pdf"
"%PANDOC_PATH%" "!INPUT_FILE!" -o "!OUTPUT_FILE!" --template=template.tex --pdf-engine=xelatex
)
echo Conversion completed.
pause
到了這里,關(guān)于Windows系統(tǒng)中將markdown文件批量轉(zhuǎn)化為PDF的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!