feat: integrate MinerU document to Markdown converter

- Add MinerU converter engine (src/converters/mineru.ts)
- Support md-t (table as Markdown) and md-i (table as image) output formats
- Input formats: pdf, ppt, pptx, xls, xlsx, doc, docx
- Output as ZIP archive containing Markdown and images
- Update Dockerfile to install magic-pdf via pipx
- Add zip utility for archive creation
- Update normalizeFiletype to map md-t/md-i to zip extension
- Add comprehensive tests for MinerU converter
- Update README with MinerU documentation
This commit is contained in:
Your Name 2026-01-21 12:10:49 +08:00
parent e577658231
commit e5ca364563
6 changed files with 383 additions and 4 deletions

View file

@ -25,6 +25,7 @@ import { convert as convertVtracer, properties as propertiesVtracer } from "./vt
import { convert as convertVcf, properties as propertiesVcf } from "./vcf";
import { convert as convertxelatex, properties as propertiesxelatex } from "./xelatex";
import { convert as convertMarkitdown, properties as propertiesMarkitdown } from "./markitdown";
import { convert as convertMineru, properties as propertiesMineru } from "./mineru";
// This should probably be reconstructed so that the functions are not imported instead the functions hook into this to make the converters more modular
@ -137,6 +138,10 @@ const properties: Record<
properties: propertiesMarkitdown,
converter: convertMarkitdown,
},
mineru: {
properties: propertiesMineru,
converter: convertMineru,
},
};
function chunks<T>(arr: T[], size: number): T[][] {