
pptx
Atvērtā koda JavaScript bibliotēka PowerPoint
Izveidojiet, rediģējiet, validējiet un animējiet PPTX failus Node.js un pārlūkprogrammā ar pilnu ECMA-376 atbilstību.
Kas ir pptx?
@office-kit/pptx ir mūsdienīga, tipizēta JavaScript bibliotēka PowerPoint (.pptx) failu ģenerēšanai un rediģēšanai gan Node.js, gan pārlūkprogrammu vidēs. Tā ir izveidota ap ECMA-376 PresentationML specifikāciju, nodrošinot stabilu objektu modeli, kas atspoguļo oficiālo XML shēmu. Atšķirībā no daudziem alternatīviem, tā piedāvā vienu ESM pakotni, kas visās vidēs darbojas konsekventi, izvairās no trauslām uz virkņu balstītām XML, un izvada failus, kas validēti pret Microsoft Open XML SDK validatoru.
Bibliotēka atbalsta divus darba plūsmas: esošu veidņu rediģēšanu un jaunu prezentāciju veidošanu no nulles. Tā apstrādā slaidus, formas, tekstu, tabulas, diagrammas, animācijas, komentārus un pārejas, nodrošinot stingru tipēšanu un tree‑shaking atbalstu minimālai pakotnes lielumam (~60 KB pamata ielādei/saglabāšanai). Tā dizains nodrošina drošu apgrieztu pārvietošanu — neapstrādāts saturs tiek saglabāts, nevis izdzēsts — padarot to par ideālu risinājumu ražošanas lietošanai, kur svarīga shēmas derīgums un starpplatformu saderība (PowerPoint, Keynote, Google Slides, LibreOffice).
Kā sākt ar pptx
Instalējiet @office-kit/pptx, izmantojot npm, pnpm vai yarn. Bibliotēka tiek izplatīta kā ESM pakotne un atbalsta tree-shaking, lai nodrošinātu minimālu izmēru. Pēc instalēšanas importējiet funkcijas, piemēram, `loadPresentation`, `savePresentation` vai `createPresentation`, lai sāktu veidot vai rediģēt PPTX failus. API ir konsekvents gan Node.js, gan pārlūkprogrammu vidēs, un oficiālajā [pptx GitHub](https://github.com/office-kit/pptx) krātuvē ir iekļauti detalizēti lietošanas piemēri, validācijas rīki un prasmju ceļvedis AI atbalstītai izstrādei.
Instalējiet pptx, izmantojot NPM, pnpm vai Yarn
# npm
npm install @office-kit/pptx
# pnpm
pnpm add @office-kit/pptx
# yarn
yarn add @office-kit/pptx
Rediģēt PowerPoint veidnes
Veidņu rediģēšana ir @office-kit/pptx galvenā priekšrocība. Jūs varat ielādēt esošu PPTX failu, atrast viettērus (piem., virsraksts, saturs) un programmatūrā aizstāt tekstu — ideāli piemērots dinamiskai pārskatu ģenerēšanai. Bibliotēka atbalsta tokenu balstītu aizstāšanu visos slaidos, padarot grupas atjauninājumus vienkāršus. Tā saglabā izkārtojuma integritāti un nodrošina, ka iznākums ir saderīgs ar PowerPoint, Keynote un Google Slides. Šis darba plūsma ir īpaši noderīga veidņu prezentācijām, kurās starp izpildēm mainās tikai saturs.
Kā aizstāt veidnes tekstu PowerPoint failā?
import {
findSlidePlaceholder,
getSlides,
loadPresentation,
savePresentation,
setShapeText,
} from '@office-kit/pptx';
const pres = await loadPresentation(existingPptxBytes);
const cover = getSlides(pres)[0]!;
const title = findSlidePlaceholder(cover, 'title');
if (title) setShapeText(title, 'Q3 Review');
const body = findSlidePlaceholder(cover, 'body');
if (body) setShapeText(body, 'Numbers up and to the right.');
const out: Uint8Array = await savePresentation(pres);
Izveidot prezentācijas no nulles
Ar `createPresentation()`, jūs varat izveidot pilnīgu PowerPoint prezentāciju no nulles — nav nepieciešama veidne. Funkcija atgriež pilnīgi strukturētu prezentāciju ar galveno, tēmu un noklusējuma izkārtojumiem (`Blank`, `Title Slide`, `Title and Content`). Pēc tam varat pievienot slaidus, ievietot teksta lodziņus, attēlus, tabulas un diagrammas, izmantojot tipizētās API. Šī pieeja nodrošina pilnīgu kontroli pār dizainu un saturu, ļaujot programmatiski ģenerēt prezentācijas informācijas paneļiem, atskaitēm vai AI vadītām slaidu komplektiem, saglabājot ECMA-376 atbilstību.
Kā izveidot jaunu PowerPoint prezentāciju no nulles?
import {
addTitleSlide,
createPresentation,
savePresentation,
} from '@office-kit/pptx';
const pres = createPresentation();
addTitleSlide(pres, 'Q3 Business Review');
const out: Uint8Array = await savePresentation(pres);
Diagrammas, animācijas un komentāri
@office-kit/pptx atbalsta bagātus slaidu elementus, tostarp diagrammas (stabiņi, līnijas, sektoru, laukuma), animācijas (fadeIn, fadeOut, appear) un komentārus. Diagrammas iekļauj tiešus Excel datus, lai tos varētu rediģēt PowerPoint, savukārt animācijas izmanto iepriekš definētus efektus ar konfigurējamu ilgumu. Komentāri ļauj pievienot pārskatītāja piezīmes ar autora metadatiem un izvēles pozicionēšanu. Šīs funkcijas padara bibliotēku piemērotu interaktīvu, datu bagātu prezentāciju izveidei, kas atbilst profesionālajiem standartiem un iziet shēmas validāciju.
Kā pievienot diagrammu un animāciju slaidam?
import {
addSlideChart,
getSlides,
loadPresentation,
setShapeAnimation,
savePresentation,
inches,
} from '@office-kit/pptx';
const pres = await loadPresentation(templateBytes);
const slide = getSlides(pres)[0]!;
addSlideChart(slide!, {
x: inches(0.5),
y: inches(0.5),
w: inches(8),
h: inches(4.5),
spec: {
kind: 'column',
categories: ['Q1', 'Q2', 'Q3', 'Q4'],
series: [
{ name: 'Revenue', values: [120, 180, 240, 300] },
{ name: 'Cost', values: [80, 90, 130, 160] },
],
title: 'FY26 plan',
},
});
const shape = getSlideShapes(slide)[0]!;
setShapeAnimation(shape, { effect: 'fadeIn', durationMs: 800 });
await savePresentation(pres);
Validācija un shēmas atbilstība
PPTX failu atbilstības nodrošināšana ar ECMA-376 ir būtiska, lai nodrošinātu saderību starp dažādiem rīkiem. @office-kit/pptx ietver `validatePresentation()` lai noteiktu problēmas, piemēram, trūkstošas attiecības, nederīgus slaidu ID vai bojātas izkārtojuma atsauces. Tāpat tas CI vidē, ja pieejams, izmanto `xmllint`, lai pārbaudītu ģenerēto XML pret oficiālajām shēmām. Šis validācijas slānis palīdz noķert smalkas kļūdas pirms izplatīšanas, nodrošinot, ka prezentācijas tiek droši atvērtas PowerPoint, Keynote, Google Slides un LibreOffice—neizmantojot “open and pray” pieeju.
Kā validēt PowerPoint prezentāciju?
import { validatePresentation } from '@office-kit/pptx';
const issues = validatePresentation(pres);
for (const i of issues) console.error(i.severity, i.message);
// Catches missing rels, dangling slide ids, layouts without masters, etc.
