Szerezze be a Portion Rectangle-t a PowerPointban Java segítségével
Bevezetés
Dinamikus prezentációk létrehozása Java nyelven gyerekjáték az Aspose.Slides for Java segítségével. Ebben az oktatóanyagban belevetjük magunkat az Aspose.Slides segítségével a rész-téglalap PowerPointban való lekérésének alapjaiba. A környezet beállításától a kód lépésről lépésre történő lebontásáig mindenre kiterjedünk. Szóval, kezdjük!
Előfeltételek
Mielőtt belevágnánk a kódba, győződjünk meg arról, hogy minden megvan, ami a zökkenőmentes követéshez szükséges:
- Java Development Kit (JDK): Győződjön meg arról, hogy a JDK 8 vagy újabb verziója van telepítve a gépére.
- Aspose.Slides for Java: Töltse le a legújabb verziót innen itt .
- Integrált fejlesztői környezet (IDE): Eclipse, IntelliJ IDEA vagy bármilyen más Java IDE, amelyet Ön választ.
- Alapszintű Java ismerete: A Java programozás ismerete elengedhetetlen.
Csomagok importálása
Először is importáljuk a szükséges csomagokat. Ez magában foglalja az Aspose.Slides-t és néhány másikat is a feladatunk hatékony kezeléséhez.
import com.aspose.slides.*;
import com.aspose.slides.examples.RunExamples;
import java.awt.*;
import java.awt.geom.Rectangle2D;
1. lépés: A prezentáció beállítása
Az első lépés egy új prezentáció létrehozása. Ez lesz a vásznunk, amin dolgozhatunk.
Presentation pres = new Presentation();
2. lépés: Táblázat létrehozása
Most pedig adjunk hozzá egy táblázatot bemutatónk első diájához. Ez a táblázat tartalmazza azokat a cellákat, ahová a szövegünket hozzáadjuk.
ITable tbl = pres.getSlides().get_Item(0).getShapes().addTable(50, 50, new double[]{50, 70}, new double[]{50, 50, 50});
3. lépés: Bekezdések hozzáadása a cellákhoz
Ezután bekezdéseket hozunk létre, és hozzáadjuk őket a táblázat egy adott cellájához. Ez magában foglalja a meglévő szöveg törlését, majd új bekezdések hozzáadását.
// Hozzon létre bekezdéseket
IParagraph paragraph0 = new Paragraph();
paragraph0.getPortions().add(new Portion("Text "));
paragraph0.getPortions().add(new Portion("in0"));
paragraph0.getPortions().add(new Portion(" Cell"));
IParagraph paragraph1 = new Paragraph();
paragraph1.setText("On0");
IParagraph paragraph2 = new Paragraph();
paragraph2.getPortions().add(new Portion("Hi there "));
paragraph2.getPortions().add(new Portion("col0"));
// Szöveg hozzáadása a táblázat cellájához
ICell cell = tbl.get_Item(1, 1);
cell.getTextFrame().getParagraphs().clear();
cell.getTextFrame().getParagraphs().add(paragraph0);
cell.getTextFrame().getParagraphs().add(paragraph1);
cell.getTextFrame().getParagraphs().add(paragraph2);
4. lépés: Szövegkeret hozzáadása egy AutoShape-hoz
Prezentációnk dinamikusabbá tételéhez szövegkeretet adunk az AutoShape-hoz, és beállítjuk annak igazítását.
IAutoShape autoShape = pres.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 400, 100, 60, 120);
autoShape.getTextFrame().setText("Text in shape");
autoShape.getTextFrame().getParagraphs().get_Item(0).getParagraphFormat().setAlignment(TextAlignment.Left);
5. lépés: Koordináták kiszámítása
Meg kell kapnunk a táblázatcella bal felső sarkának koordinátáit. Ez segít a formák pontos elhelyezésében.
double x = tbl.getX() + cell.getOffsetX();
double y = tbl.getY() + cell.getOffsetY();
6. lépés: Keretek hozzáadása a bekezdésekhez és részekhez
Használni aIParagraph.getRect()
ésIPortion.getRect()
módszerekkel kereteket adhatunk a bekezdéseinkhez és részeinkhez. Ez magában foglalja a bekezdések és részek iterációját, alakzatok létrehozását körülöttük és a megjelenésük testreszabását.
for (IParagraph para : cell.getTextFrame().getParagraphs()) {
if ("".equals(para.getText())) continue;
Rectangle2D.Float rect = (Rectangle2D.Float) para.getRect().clone();
IAutoShape shape = pres.getSlides().get_Item(0).getShapes().addAutoShape(
ShapeType.Rectangle,
(float) rect.getX() + (float) x,
(float) rect.getY() + (float) y,
(float) rect.getWidth(),
(float) rect.getHeight()
);
shape.getFillFormat().setFillType(FillType.NoFill);
shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.YELLOW);
shape.getLineFormat().getFillFormat().setFillType(FillType.Solid);
for (IPortion portion : para.getPortions()) {
if (portion.getText().contains("0")) {
rect = portion.getRect();
shape = pres.getSlides().get_Item(0).getShapes().addAutoShape(
ShapeType.Rectangle,
(float) rect.getX() + (float) x,
(float) rect.getY() + (float) y,
(float) rect.getWidth(),
(float) rect.getHeight()
);
shape.getFillFormat().setFillType(FillType.NoFill);
}
}
}
7. lépés: Keretek hozzáadása az AutoShape bekezdésekhez
Hasonlóképpen kereteket adunk a bekezdésekhez az AutoShape-ban, javítva a prezentáció vizuális vonzerejét.
for (IParagraph para : autoShape.getTextFrame().getParagraphs()) {
Rectangle2D.Float rect = (Rectangle2D.Float) para.getRect().clone();
IAutoShape shape = pres.getSlides().get_Item(0).getShapes().addAutoShape(
ShapeType.Rectangle,
(float) rect.getX() + autoShape.getX(),
(float) rect.getY() + autoShape.getY(),
(float) rect.getWidth(),
(float) rect.getHeight()
);
shape.getFillFormat().setFillType(FillType.NoFill);
shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.YELLOW);
shape.getLineFormat().getFillFormat().setFillType(FillType.Solid);
}
8. lépés: A prezentáció mentése
Végül elmentjük a prezentációnkat egy megadott útvonalra.
String outPath = "path_to_output_directory";
pres.save(outPath + "GetRect_Out.pptx", SaveFormat.Pptx);
9. lépés: Tisztítás
Jó gyakorlat a prezentációs objektum megsemmisítése az erőforrások felszabadítása érdekében.
if (pres != null) pres.dispose();
Következtetés
Gratulálunk! Sikeresen megtanulta, hogyan szerezheti be a résztéglalapot a PowerPointban az Aspose.Slides for Java segítségével. Ez a hatékony könyvtár a lehetőségek világát nyitja meg a dinamikus és tetszetős prezentációk programozott létrehozásához. Merüljön el mélyebben az Aspose.Slides-ben, és fedezzen fel további funkciókat prezentációinak továbbfejlesztéséhez.
GYIK
Mi az Aspose.Slides for Java?
Az Aspose.Slides for Java egy hatékony könyvtár, amely lehetővé teszi a fejlesztők számára PowerPoint prezentációk programozott létrehozását, módosítását és kezelését.
Használhatom az Aspose.Slides for Java programot kereskedelmi projektekben?
Igen, az Aspose.Slides for Java használható kereskedelmi projektekben. Engedélyt vásárolhat innen itt .
Létezik ingyenes próbaverzió az Aspose.Slides for Java számára?
Igen, letölthet egy ingyenes próbaverziót a webhelyről itt .
Hol találom az Aspose.Slides for Java dokumentációját?
A dokumentáció elérhető itt .
Hogyan kaphatok támogatást az Aspose.Slides for Java számára?
Támogatást kaphat az Aspose fórumtól itt .