Skip to content

Commit 06a456c

Browse files
committed
fix: 修正 DOCX 导出中 SVG 配图转换函数导入路径与测试类型
1 parent ccd8403 commit 06a456c

3 files changed

Lines changed: 6 additions & 3 deletions

File tree

‎src/__tests__/unit/docx-export.test.ts‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,8 @@ describe("rasterizeSvgFigureForDocx & triggerDocxDownload", () => {
123123
try {
124124
const result = await rasterizeImageForDocx("https://example.com/broken.png");
125125
expect(result).toBeNull();
126+
const svgResult = await rasterizeSvgFigureForDocx('<svg xmlns="http://www.w3.org/2000/svg"/>', 80, "center");
127+
expect(svgResult).toBeNull();
126128
} finally {
127129
globalThis.Image = OriginalImage;
128130
}

‎src/__tests__/unit/print-preview.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ describe('print preview helpers', () => {
3939
});
4040

4141
it('提取打印题目的知识点名称并兼容旧版 JSON 字符串', () => {
42-
expect(getPrintableItemTagNames({ tags: [{ id: '1', name: '勾股定理' }], knowledgePoints: '["旧标签"]' }))
42+
expect(getPrintableItemTagNames({ tags: [{ name: '勾股定理' }], knowledgePoints: '["旧标签"]' }))
4343
.toEqual(['勾股定理']);
4444
expect(getPrintableItemTagNames({ tags: [], knowledgePoints: '["二次函数","配方法"]' }))
4545
.toEqual(['二次函数', '配方法']);

‎src/lib/docx-export.ts‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
import { normalizeFigureAlign, normalizeFigureScale, svgToDataUri } from "@/lib/figure-scale";
1+
import { normalizeFigureAlign, normalizeFigureScale } from "@/lib/figure-scale";
22
import type { FigureAlign } from "@/lib/figure-scale";
3+
import { figureSvgToDataUri } from "@/lib/figure-svg";
34
import { separateChoiceOptions } from "@/lib/markdown-math";
45

56
/** DOCX 内嵌图片数据 */
@@ -609,7 +610,7 @@ export async function rasterizeSvgFigureForDocx(
609610
align?: FigureAlign | string | null,
610611
): Promise<DocxEmbeddedImage | null> {
611612
if (!svg) return null;
612-
return rasterizeImageForDocx(svgToDataUri(svg), {
613+
return rasterizeImageForDocx(figureSvgToDataUri(svg), {
613614
scalePercent: normalizeFigureScale(scale ?? undefined),
614615
maxBaseWidthPx: 360,
615616
align,

0 commit comments

Comments
 (0)