Ominaisuudet ja toiminnot

Ominaisuudet ja toiminnot

Aspose.Slides FOSS for Java tarjoaa laajan valikoiman ominaisuuksia PowerPoint .pptx-tiedostojen ohjelmalliseen käsittelyyn. Tämä sivu luettelee kaikki tuetut ominaisuusalueet esimerkkikoodin avulla.


Esitys I/O

Avaa olemassa oleva .pptx‑tiedosto tai luo uusi, ja tallenna takaisin PPTX-muotoon.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

// Open an existing presentation
try (Presentation prs = new Presentation("input.pptx")) {
    System.out.println("Slide count: " + prs.getSlides().size());
    prs.save("output.pptx", SaveFormat.PPTX);
}

// Create a new presentation (starts with one blank slide)
try (Presentation prs = new Presentation()) {
    prs.save("new.pptx", SaveFormat.PPTX);
}

Huom.: PPTX on ainoa tuettu tallennusmuoto. Vienti PDF, HTML, SVG tai kuvia ei ole saatavilla.

Tuntemattomat XML-osat lähdetiedostossa säilytetään kirjaimellisesti tallennettaessa, joten .pptx:n avaaminen ja uudelleentallennus eivät koskaan poista kirjaston vielä ymmärtämättömän sisällön.


Diaesitysten hallinta

Lisää, poista, kloonaa ja järjestä dioja uudelleen.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    // Access the first slide
    var slide = prs.getSlides().get(0);

    // Add an additional blank slide at the end
    prs.getSlides().addEmptySlide(prs.getLayoutSlides().get(0));

    System.out.println("Total slides: " + prs.getSlides().size());
    prs.save("multi-slide.pptx", SaveFormat.PPTX);
}

Muodot

Lisää AutoShapes, PictureFrames, Tables ja Connectors diaan.

Automaattimuodot

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    // Add a rectangle at (x=50, y=50) with width=300, height=100
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 100);
    shape.addTextFrame("Aspose.Slides FOSS");
    prs.save("shapes.pptx", SaveFormat.PPTX);
}

Taulukot

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    // Column widths and row heights in points
    double[] colWidths = {120.0, 120.0, 120.0};
    double[] rowHeights = {40.0, 40.0, 40.0};
    var table = slide.getShapes().addTable(50, 50, colWidths, rowHeights);
    table.getRows().get(0).get(0).getTextFrame().setText("Product");
    table.getRows().get(0).get(1).getTextFrame().setText("Quantity");
    table.getRows().get(0).get(2).getTextFrame().setText("Price");
    prs.save("table.pptx", SaveFormat.PPTX);
}

Liittimet

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var box1 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 100, 150, 60);
    var box2 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 350, 100, 150, 60);
    var conn = slide.getShapes().addConnector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10);
    conn.setStartShapeConnectedTo(box1);
    conn.setStartShapeConnectionSiteIndex(3);  // right side
    conn.setEndShapeConnectedTo(box2);
    conn.setEndShapeConnectionSiteIndex(1);    // left side
    prs.save("connector.pptx", SaveFormat.PPTX);
}

Tekstin muotoilu

Muotoile tekstiä kappale- ja merkkitasolla käyttäen PortionFormat.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 500, 150);
    var tf = shape.addTextFrame("Bold blue heading");

    var fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
    fmt.setFontHeight(28);
    fmt.setFontBold(NullableBool.TRUE);
    fmt.getFillFormat().setFillType(FillType.SOLID);
    fmt.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 0, 70, 127));

    prs.save("text.pptx", SaveFormat.PPTX);
}

NullableBool.TRUE asettaa ominaisuuden eksplisiittisesti; NullableBool.NOT_DEFINED perii dia‑päämallista.


Täyttötyypit

Käytä tasaväri-, liukuväri-, kuvio- tai kuvataustäytteitä muotoihin.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 150);

    // Solid fill
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 30, 120, 200));

    prs.save("fill.pptx", SaveFormat.PPTX);
}

Visuaaliset tehosteet

Lisää ulkoinen varjo, hehku, pehmeä reuna, sumennus, heijastus ja sisäinen varjo muodoille.

Efektin ominaisuudet ovat käytettävissä shape.getEffectFormat() kautta. Kutsu enableOuterShadowEffect(), enableGlowEffect(), enableSoftEdgeEffect(), setBlurEffect(radius, grow), enableReflectionEffect() tai enableInnerShadowEffect() määrittääksesi jokaisen erikseen.


3D-muotoilu

Käytä 3D-viistokulmaa, kameraa, light rig -asetusta, materiaalia ja ulostulosyvyyttä shape.getThreeDFormat()-menetelmällä. Tämä ohjaa visuaalista syvyyttä ja valaistusmallia muodon renderöinnissä PPTX-katseluohjelmissa, jotka tukevat 3D-efektejä.


Puhujan muistiinpanot

Liitä muistiinpanot mihin tahansa diaan käyttäen getNotesSlideManager().

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var notes = prs.getSlides().get(0).getNotesSlideManager().addNotesSlide();
    notes.getNotesTextFrame().setText("Key talking point: emphasize the ROI benefit.");
    prs.save("notes.pptx", SaveFormat.PPTX);
}

Kommentit

Lisää ketjutetut kommentit, joissa on tekijän tiedot ja dian sijainti.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.drawing.PointF;
import org.aspose.slides.foss.export.SaveFormat;
import java.time.LocalDateTime;

try (Presentation prs = new Presentation()) {
    var author = prs.getCommentAuthors().addAuthor("Jane Smith", "JS");
    var slide = prs.getSlides().get(0);
    author.getComments().addComment(
        "Please verify this data before the presentation.",
        slide,
        new PointF(2.0f, 2.0f),
        LocalDateTime.now()
    );
    prs.save("comments.pptx", SaveFormat.PPTX);
}

Upotetut kuvat

Upota kuva tiedostosta esitykseen ja lisää se diaan PictureFrame-objektina.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
import java.nio.file.Files;
import java.nio.file.Path;

try (Presentation prs = new Presentation()) {
    byte[] imageData = Files.readAllBytes(Path.of("logo.png"));
    var image = prs.getImages().addImage(imageData);
    var slide = prs.getSlides().get(0);
    slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);
    prs.save("with-image.pptx", SaveFormat.PPTX);
}

Asiakirjan ominaisuudet

Lue ja kirjoita ydinasetukset, sovellus- ja mukautetut asiakirjaominaisuudet.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var props = prs.getDocumentProperties();

    // Core properties
    props.setTitle("Q1 Results");
    props.setAuthor("Finance Team");
    props.setSubject("Quarterly Review");
    props.setKeywords("Q1, finance, results");

    // Custom property
    props.setCustomPropertyValue("ReviewedBy", "Legal Team");

    prs.save("deck.pptx", SaveFormat.PPTX);
}

Tunnetut rajoitukset

Seuraavat alueet nostavat UnsupportedOperationException ja eivät ole saatavilla tässä versiossa:

AlueTila
KaaviotEi toteutettu
SmartArtEi toteutettu
Animaatiot ja siirtymätEi toteutettu
PDF / HTML / SVG / kuvan vientiEi toteutettu (vain PPTX)
VBA-makrotEi toteutettu
Digitaaliset allekirjoituksetEi toteutettu
Hyperlinkit ja toimintoasetuksetEi toteutettu
OLE-objektitEi toteutettu
Matemaattinen tekstiEi toteutettu

Katso myös

 Suomi