pptx

 
 

Avoimen lähdekoodin JavaScript-kirjasto PowerPointia varten

Luo, muokkaa, validoi ja animoi PPTX-tiedostoja Node.js:ssä ja selaimessa täyden ECMA-376-yhteensopivuuden kanssa.

Mikä on pptx?

@office-kit/pptx on moderni, tyypitetty JavaScript‑kirjasto PowerPoint‑ (.pptx) -tiedostojen luomiseen ja muokkaamiseen sekä Node.js‑ että selainympäristöissä. Se on rakennettu ECMA‑376 PresentationML -määrittelyn ympärille, ja se tarjoaa vankkan objektimallin, joka heijastaa virallista XML‑skeemaa. Toisin kuin monet vaihtoehdot, se toimittaa yhden ESM‑paketin, joka toimii johdonmukaisesti eri ympäristöissä, välttää haavoittuvaa merkkijono‑pohjaista XML:ää ja tuottaa tiedostoja, jotka on validoitu Microsoftin Open XML SDK -validoinnin avulla.

Kirjasto tukee kahta työnkulkua: olemassa olevien mallien muokkaamista ja esitysten luomista alusta alkaen. Se käsittelee dioja, muotoja, tekstiä, taulukoita, kaavioita, animaatioita, kommentteja ja siirtymiä vahvalla tyypityksellä sekä tree‑shaking‑tuen avulla minimaalista pakettikokoa varten (~60 KB peruslataukselle/tallennukselle). Sen suunnittelu takaa pyörähdyksen turvallisuuden — mallintamaton sisältö säilyy, eikä sitä poisteta — mikä tekee siitä ihanteellisen tuotantokäyttöön, jossa skeeman kelpoisuus ja monialustainen yhteensopivuus (PowerPoint, Keynote, Google Slides, LibreOffice) ovat kriittisiä.

Previous Next

Pptx:n aloitus

Asenna @office-kit/pptx npm:n, pnpm:n tai yarnin kautta. Kirjasto jaetaan ESM-pakettina ja tukee tree-shakingia minimaalisen jalanjäljen saavuttamiseksi. Asennuksen jälkeen tuo funktioita kuten `loadPresentation`, `savePresentation` tai `createPresentation` aloittaaksesi PPTX-tiedostojen luomisen tai muokkaamisen. API on yhtenäinen sekä Node.js- että selainympäristöissä, ja virallinen [pptx GitHub](https://github.com/office-kit/pptx) -repo sisältää yksityiskohtaisia käyttöesimerkkejä, validointityökaluja ja taito-opasta AI-avusteiseen kehitykseen.

Asenna pptx NPM:n, pnpm:n tai Yarnin kautta

# npm
npm install @office-kit/pptx

# pnpm
pnpm add @office-kit/pptx

# yarn
yarn add @office-kit/pptx

Muokkaa PowerPoint-malleja

Template-muokkaus on @office-kit/pptx:n keskeinen vahvuus. Voit ladata olemassa olevan PPTX-tiedoston, löytää paikkamerkit (esim. otsikko, leipäteksti) ja korvata tekstin ohjelmallisesti—ihanteellinen dynaamiseen raporttien luomiseen. Kirjasto tukee token-pohjaista korvausta kaikilla dioilla, mikä tekee eräpäivityksistä vaivattomia. Se säilyttää asettelun eheyden ja varmistaa, että tulos on yhteensopiva PowerPointin, Keynoten ja Google Slidesin kanssa. Tämä työnkulku on erityisen hyödyllinen mallipohjaisissa esityksissä, joissa vain sisältö muuttuu suoritusten välillä.

Kuinka korvata mallipohjan teksti PowerPoint‑tiedostossa?

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);

Luo esityksiä alusta alkaen

Kun käytät `createPresentation()`, voit rakentaa täydellisen PowerPoint-esityksen alusta alkaen — mallia ei tarvita. Funktio palauttaa täysin rakennetun esityksen, jossa on master, teema ja oletusasettelut (`Blank`, `Title Slide`, `Title and Content`). Voit sen jälkeen lisätä dioja, lisätä tekstikenttiä, kuvia, taulukoita ja kaavioita käyttämällä tyypitettyjä API-rajapintoja. Tämä lähestymistapa antaa täyden hallinnan suunnitteluun ja sisältöön, mahdollistaen ohjelmallisen esitysten luomisen koontinäytöille, raporteille tai tekoälyohjautuville diaesityksille ECMA-376-yhteensopivuuden säilyttäen.

Kuinka luoda uusi PowerPoint‑esitys alusta alkaen?

import {
  addTitleSlide,
  createPresentation,
  savePresentation,
} from '@office-kit/pptx';

const pres = createPresentation();
addTitleSlide(pres, 'Q3 Business Review');
const out: Uint8Array = await savePresentation(pres);

Kaaviot, animaatiot ja kommentit

@office-kit/pptx tukee monipuolisia dioelementtejä, mukaan lukien kaaviot (palkki, viiva, piirakka, alue), animaatiot (fadeIn, fadeOut, appear) ja kommentit. Kaaviot upottavat live-Excel-datan muokattavaksi PowerPointissa, kun taas animaatiot käyttävät esiasetettuja efektejä, joiden kestoa voidaan säätää. Kommentit antavat mahdollisuuden lisätä tarkastelijan muistiinpanoja tekijän metatiedoilla ja valinnaisella sijoittelulla. Nämä ominaisuudet tekevät kirjastosta sopivan interaktiivisten, dataa sisältävien esitysten luomiseen, jotka täyttävät ammatilliset standardit ja läpäisevät skeeman validoinnin.

Kuinka lisätä kaavio ja animaatio diaan?

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);

Validointi ja skeeman noudattaminen

PPTX-tiedostojen ECMA-376-yhteensopivuuden varmistaminen on kriittistä työkalujen välisen yhteensopivuuden kannalta. @office-kit/pptx sisältää `validatePresentation()`-funktion havaitakseen ongelmia, kuten puuttuvia suhteita, virheellisiä diojen tunnisteita tai rikkinäisiä asettelureferenssejä. Se käyttää myös `xmllint`-työkalua CI:ssä, jos saatavilla, validoidakseen tuotetun XML:n virallisia skeemoja vastaan. Tämä validointikerros auttaa sieppäämään hienovaraisia virheitä ennen jakelua, varmistaen että esitykset avautuvat luotettavasti PowerPointissa, Keynotessa, Google Slidesissa ja LibreOfficessa—ilman että täytyy turvautua \"open and pray\" -käyttäytymiseen.

Kuinka validoida PowerPoint‑esitys?

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.
 Suomen