feat: add pptxgenjs translation engine (mechanical mapping)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-23 12:34:45 +08:00
co-authored by Claude Sonnet 5
parent ba8d17ba62
commit 768ac12740
7 changed files with 92 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
const { renderText } = require('./text-renderer');
const { renderShape } = require('./shape-renderer');
const { renderTable } = require('./table-renderer');
const { renderImage } = require('./image-renderer');
const { renderChart } = require('./chart-renderer');
function renderSlide(pptx, slideData) {
const slide = pptx.addSlide();
if (slideData.background) slide.background = slideData.background;
if (slideData.color) slide.color = slideData.color;
if (slideData.hidden) slide.hidden = slideData.hidden;
const objects = slideData.objects || [];
objects.forEach(obj => {
switch (obj.type) {
case 'text':
renderText(slide, obj);
break;
case 'shape':
renderShape(slide, obj);
break;
case 'table':
renderTable(slide, obj);
break;
case 'image':
renderImage(slide, obj);
break;
case 'chart':
renderChart(slide, obj);
break;
}
});
}
module.exports = { renderSlide };