add:修改使用reportlab完成md转pdf

This commit is contained in:
2026-01-15 23:45:46 +08:00
parent cecc8c65be
commit 0cc1a9484e
7 changed files with 436 additions and 299 deletions

View File

@@ -3,10 +3,11 @@ import { ref } from 'vue'
import DocToMd from './components/DocToMd.vue'
import BatchProcess from './components/BatchProcess.vue'
import MdToDoc from './components/MdToDoc.vue'
import MdToPdf from './components/MdToPdf.vue'
import ConfigModal from './components/ConfigModal.vue'
const showConfig = ref(false)
const activePage = ref<'doc-to-md' | 'batch' | 'md-to-doc'>('doc-to-md')
const activePage = ref<'doc-to-md' | 'batch' | 'md-to-doc' | 'md-to-pdf'>('doc-to-md')
</script>
<template>
@@ -20,12 +21,14 @@ const activePage = ref<'doc-to-md' | 'batch' | 'md-to-doc'>('doc-to-md')
<div class="top-tab" :class="{active: activePage === 'doc-to-md'}" @click="activePage = 'doc-to-md'">DOCX/PDF Markdown</div>
<div class="top-tab" :class="{active: activePage === 'batch'}" @click="activePage = 'batch'">批量处理</div>
<div class="top-tab" :class="{active: activePage === 'md-to-doc'}" @click="activePage = 'md-to-doc'">Markdown DOCX/PDF</div>
<div class="top-tab" :class="{active: activePage === 'md-to-pdf'}" @click="activePage = 'md-to-pdf'">Markdown PDF</div>
</div>
<div class="main-content">
<DocToMd v-if="activePage === 'doc-to-md'" />
<BatchProcess v-if="activePage === 'batch'" />
<MdToDoc v-if="activePage === 'md-to-doc'" />
<MdToPdf v-if="activePage === 'md-to-pdf'" />
</div>
<ConfigModal v-model="showConfig" />

View File

@@ -303,3 +303,10 @@ export async function syncServerTime(method?: string, ntpServer?: string): Promi
return { ok: false }
}
}
export async function convertMarkdownToPdf(formData: FormData): Promise<Response> {
return apiFetch(`/api/pdf/convert`, {
method: 'POST',
body: formData
})
}