🎨 Support for embedding images when exporting EPUB, ODT and RTF Fix https://github.com/siyuan-note/siyuan/issues/8288

This commit is contained in:
Liang Ding 2023-05-17 15:37:39 +08:00
parent de2a414968
commit 9aca165875
No known key found for this signature in database
GPG key ID: 136F30F901A2231D
2 changed files with 16 additions and 15 deletions

View file

@ -1032,7 +1032,7 @@ func BatchExportMarkdown(boxID, folderPath string) (zipPath string) {
for _, docFile := range docFiles {
docPaths = append(docPaths, docFile.path)
}
zipPath = exportPandocConvertZip(boxID, baseFolderName, docPaths, "", "md", ".md")
zipPath = exportPandocConvertZip(boxID, baseFolderName, docPaths, "", "", ".md")
return
}
@ -2030,20 +2030,6 @@ func exportPandocConvertZip(boxID, baseFolderName string, docPaths []string,
continue
}
// 调用 Pandoc 进行格式转换
output, err := util.Pandoc(pandocFrom, pandocTo, writePath, md)
if nil != err {
logging.LogErrorf("pandoc failed: %s", err)
continue
}
if "odt" != pandocTo && "epub" != pandocTo && "rtf" != pandocTo {
if err := gulu.File.WriteFileSafer(writePath, gulu.Str.ToBytes(output), 0644); nil != err {
logging.LogErrorf("write export markdown file [%s] failed: %s", writePath, err)
continue
}
}
// 解析导出后的标准 Markdown汇总 assets
tree := parse.Parse("", gulu.Str.ToBytes(md), luteEngine.ParseOptions)
var assets []string
@ -2067,6 +2053,20 @@ func exportPandocConvertZip(boxID, baseFolderName string, docPaths []string,
continue
}
}
// 调用 Pandoc 进行格式转换
output, err := util.Pandoc(pandocFrom, pandocTo, writePath, md)
if nil != err {
logging.LogErrorf("pandoc failed: %s", err)
continue
}
if "odt" != pandocTo && "epub" != pandocTo && "rtf" != pandocTo {
if err := gulu.File.WriteFileSafer(writePath, gulu.Str.ToBytes(output), 0644); nil != err {
logging.LogErrorf("write export markdown file [%s] failed: %s", writePath, err)
continue
}
}
}
zipPath = exportFolder + ".zip"

View file

@ -58,6 +58,7 @@ func Pandoc(from, to, o, content string) (ret string, err error) {
args := []string{
"--from", from,
"--to", to,
"--resource-path", filepath.Dir(o),
"-s",
}