PowerPoint alakzatok formázása Java-ban
Bevezetés
A PowerPointban alakzatokat adhatsz a diákhoz. Mivel az alakzatok vonalakból állnak, őket a körvonalak módosításával vagy effektusok alkalmazásával formázhatod. Emellett beállítások megadásával formázhatod az alakzatok belső kitöltését is.

Az Aspose.Slides for Java interfészeket és metódusokat biztosít, amelyek lehetővé teszik az alakzatok formázását a PowerPointban elérhető ugyanazokkal a beállításokkal.
Vonalak formázása
Az Aspose.Slides használatával egy alakzatra egyedi vonalstílust adhat meg. A következő lépések mutatják be az eljárást:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat line style értékét.
- Állítsa be a vonal vastagságát.
- Állítsa be a vonal dash style értékét.
- Állítsa be az alakzat vonalszínét.
- Mentse el a módosított prezentációt PPTX fájlként.
Az alábbi kód bemutatja, hogyan formázhat egy AutoShape téglalapot:
import com.aspose.slides.*;
import java.awt.Color;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely téglalap típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 75);
// Állítsa be a téglalap alakzat kitöltőszínét.
shape.getFillFormat().setFillType(FillType.NoFill);
// Alkalmazza a formázást a téglalap vonalaira.
shape.getLineFormat().setStyle(LineStyle.ThickThin);
shape.getLineFormat().setWidth(7);
shape.getLineFormat().setDashStyle(LineDashStyle.Dash);
// Állítsa be a téglalap vonalának színét.
shape.getLineFormat().getFillFormat().setFillType(FillType.Solid);
shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Mentse a PPTX fájlt a lemezre.
presentation.save("formatted_lines.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Vázlatos effektusok alkalmazása a alakzatvonalakra
A vázlatos effektus kézzel rajzolt megjelenést kölcsönöz a vonalnak. Használja az IShape.getLineFormat metódust a vonalbeállítások eléréséhez, az ILineFormat.getSketchFormat metódust a vázlat beállításainak eléréséhez, és az ISketchFormat.setSketchType metódust, hogy a LineSketchType felsorolásból válasszon értéket.
Az alábbi Java kód megmutatja, hogyan alkalmazzon egy LineSketchType.Curved effektust, hogyan olvassa ki a kifejezetten hozzárendelt értéket, és hogyan távolítsa el az effektust a LineSketchType.None segítségével:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 100);
// Hozzáfér az alakzat vonalformátumához és annak vázlatformátumához.
ISketchFormat sketchFormat = shape.getLineFormat().getSketchFormat();
// Alkalmaz egy vázlat effektust.
sketchFormat.setSketchType(LineSketchType.Curved);
// Olvassa be a közvetlenül az alakzatra rendelt vázlat effektust.
int explicitSketchType = sketchFormat.getSketchType();
System.out.println("Explicit sketch type: " + explicitSketchType);
// Távolítsa el a vázlat effektust.
sketchFormat.setSketchType(LineSketchType.None);
} finally {
presentation.dispose();
}
Az ISketchFormat.getSketchType által visszaadott érték közvetlenül a alakzatra beállított formázást jelenti. Ha a vonalformázás öröklődik egy témából, mester diából vagy elrendezési diából, használja az ILineFormat.getEffective metódust, lépjen hozzá az ILineFormatEffectiveData.getSketchFormat metódushoz, és olvassa ki az ISketchFormatEffectiveData.getSketchType értéket. A hatékony érték az öröklődés feloldása után ténylegesen alkalmazott formázást tükrözi:
Presentation presentation = new Presentation("presentation.pptx");
try {
IShape shape = presentation.getSlides().get_Item(0).getShapes().get_Item(0);
ILineFormat lineFormat = shape.getLineFormat();
int explicitSketchType = lineFormat.getSketchFormat().getSketchType();
ILineFormatEffectiveData effectiveLineFormat = lineFormat.getEffective();
int effectiveSketchType = effectiveLineFormat.getSketchFormat().getSketchType();
System.out.println("Explicit sketch type: " + explicitSketchType);
System.out.println("Effective sketch type: " + effectiveSketchType);
} finally {
presentation.dispose();
}
Csatlakozási stílusok formázása
A három csatlakozási típus lehetősége:
- Round
- Miter
- Bevel
Alapértelmezés szerint, amikor a PowerPoint két vonalat köt össze szögnél (például egy alakzat sarkánál), a Round beállítást használja. Ha azonban hegyes szögekkel rendelkező alakzatot rajzol, a Miter opció előnyösebb lehet.

Az alábbi Java kód bemutatja, hogyan hoztak létre három téglalapot (az előző képen látható módon) a Miter, Bevel és Round csatlakozási beállításokkal:
import com.aspose.slides.*;
import java.awt.Color;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá három automatikus alakzatot, amelyek téglalap típusúak.
IAutoShape shape1 = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 20, 150, 75);
IAutoShape shape2 = slide.getShapes().addAutoShape(ShapeType.Rectangle, 210, 20, 150, 75);
IAutoShape shape3 = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 135, 150, 75);
// Állítsa be a kitöltőszínt minden téglalap alakzatra.
shape1.getFillFormat().setFillType(FillType.Solid);
shape1.getFillFormat().getSolidFillColor().setColor(Color.BLACK);
shape2.getFillFormat().setFillType(FillType.Solid);
shape2.getFillFormat().getSolidFillColor().setColor(Color.BLACK);
shape3.getFillFormat().setFillType(FillType.Solid);
shape3.getFillFormat().getSolidFillColor().setColor(Color.BLACK);
// Állítsa be a vonalvastagságot.
shape1.getLineFormat().setWidth(15);
shape2.getLineFormat().setWidth(15);
shape3.getLineFormat().setWidth(15);
// Állítsa be a vonal színét minden téglalaphoz.
shape1.getLineFormat().getFillFormat().setFillType(FillType.Solid);
shape1.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
shape2.getLineFormat().getFillFormat().setFillType(FillType.Solid);
shape2.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
shape3.getLineFormat().getFillFormat().setFillType(FillType.Solid);
shape3.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Állítsa be a csatlakozási stílust.
shape1.getLineFormat().setJoinStyle(LineJoinStyle.Miter);
shape2.getLineFormat().setJoinStyle(LineJoinStyle.Bevel);
shape3.getLineFormat().setJoinStyle(LineJoinStyle.Round);
// Adjon szöveget minden téglalaphoz.
shape1.getTextFrame().setText("Miter Join Style");
shape2.getTextFrame().setText("Bevel Join Style");
shape3.getTextFrame().setText("Round Join Style");
// Mentse a PPTX fájlt a lemezre.
presentation.save("join_styles.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Színátmenetes kitöltés
A PowerPointban a Színátmenetes kitöltés egy formázási lehetőség, amely lehetővé teszi, hogy folyamatos színátmenetet alkalmazzunk egy alakzatra. Például két vagy több színt alkalmazhatunk úgy, hogy az egyik fokozatosan elhalványul a másikba.
Az Aspose.Slides használatával a színátmenetes kitöltés alkalmazása a következő:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat FillType értékét
Gradient‑re. - Adja hozzá a két kívánt színt a megfelelő pozíciókkal a IGradientFormat interfész által biztosított gradient stop gyűjtemény
addmetódusaival. - Mentse el a módosított prezentációt PPTX fájlként.
Az alábbi Java kód bemutatja, hogyan alkalmazzon színátmenetes kitöltést egy ellipszisre:
import com.aspose.slides.*;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely ellipszis típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Ellipse, 50, 50, 150, 75);
// Alkalmazzon színátmenetes formázást az ellipszisre.
shape.getFillFormat().setFillType(FillType.Gradient);
shape.getFillFormat().getGradientFormat().setGradientShape(GradientShape.Linear);
// Állítsa be a színátmenet irányát.
shape.getFillFormat().getGradientFormat().setGradientDirection(GradientDirection.FromCorner2);
// Adjon hozzá két színátmeneti stopot.
shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor((float)1.0, PresetColor.Purple);
shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor((float)0, PresetColor.Red);
// Mentse a PPTX fájlt a lemezre.
presentation.save("gradient_fill.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Minta kitöltés
A PowerPointban a Minta kitöltés egy formázási lehetőség, amely lehetővé teszi, hogy két színű mintát – például pöttyöket, csíkokat, keresztmintát vagy négyzetrácsot – alkalmazzunk egy alakzatra. A minta első és háttérszínét egyedi színekkel állíthatja be.
Az Aspose.Slides több mint 45 előre definiált mintastílust kínál, amelyeket alakzatokra alkalmazhat a prezentációk vizuális vonzerejének növelése érdekében. Még előre definiált minta kiválasztása után is megadhatja a pontos színeket, amelyeket a minta használjon.
A minta kitöltés alkalmazása a következő:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat FillType értékét
Pattern‑re. - Válasszon egy mintastílust az előre definiált lehetőségek közül.
- Állítsa be a minta Background Color értékét.
- Állítsa be a minta Foreground Color értékét.
- Mentse el a módosított prezentációt PPTX fájlként.
Az alábbi Java kód bemutatja, hogyan alkalmazzon minta kitöltést egy téglalapra:
import com.aspose.slides.*;
import java.awt.Color;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely téglalap típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);
// Állítsa be a kitöltés típusát Pattern-re.
shape.getFillFormat().setFillType(FillType.Pattern);
// Állítsa be a minta stílusát.
shape.getFillFormat().getPatternFormat().setPatternStyle(PatternStyle.Trellis);
// Állítsa be a minta háttér- és előtérszíneit.
shape.getFillFormat().getPatternFormat().getBackColor().setColor(Color.LIGHT_GRAY);
shape.getFillFormat().getPatternFormat().getForeColor().setColor(Color.YELLOW);
// Mentse a PPTX fájlt a lemezre.
presentation.save("pattern_fill.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Kép kitöltés
A PowerPointban a Kép kitöltés egy formázási lehetőség, amely lehetővé teszi, hogy egy képet helyezzen be egy alakzatba – ezáltal a kép az alakzat háttérként szolgál.
Az Aspose.Slides használatával a kép kitöltés alkalmazása a következő:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat FillType értékét
Picture‑re. - Állítsa be a kép kitöltés módját
Tile‑re (vagy más preferált módra). - Hozzon létre egy IPPImage objektumot a használni kívánt képből.
- Adja át a képet az
ISlidesPicture.setImagemetódusnak. - Mentse el a módosított prezentációt PPTX fájlként.
Tegyük fel, hogy van egy “lotus.png” fájlunk a következőképp:

Az alábbi Java kód bemutatja, hogyan tölt fel egy alakzatot a képpel:
import com.aspose.slides.*;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely téglalap típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 255, 130);
// Állítsa be a kitöltés típusát Picture-re.
shape.getFillFormat().setFillType(FillType.Picture);
// Állítsa be a kép kitöltés módját.
shape.getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Tile);
// Töltsön be egy képet és adja hozzá a prezentáció erőforrásaihoz.
IImage image = Images.fromFile("lotus.png");
IPPImage picture = presentation.getImages().addImage(image);
image.dispose();
// Állítsa be a képet.
shape.getFillFormat().getPictureFillFormat().getPicture().setImage(picture);
// Mentse a PPTX fájlt a lemezre.
presentation.save("picture_fill.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Kép csempeként a textúrához
Ha csempeként szeretne egy képet textúraként beállítani, és testreszabni a csempézés viselkedését, használja az IPictureFillFormat interfész és a PictureFillFormat osztály következő metódusait:
- setPictureFillMode: Beállítja a kép kitöltés módját –
TilevagyStretch. - setTileAlignment: Megadja a csempék igazítását az alakzatban.
- setTileFlip: Irányítja, hogy a csempe vízszintesen, függőlegesen vagy mindkettőben legyen tükrözve.
- setTileOffsetX: Beállítja a csempe vízszintes eltolását (pontban) az alakzat kiindulási pontjától.
- setTileOffsetY: Beállítja a csempe függőleges eltolását (pontban) az alakzat kiindulási pontjától.
- setTileScaleX: Meghatározza a csempe vízszintes méretezését százalékban.
- setTileScaleY: Meghatározza a csempe függőleges méretezését százalékban.
Az alábbi kódrészlet megmutatja, hogyan adjon hozzá egy téglalap alakzatot csempézett kép kitöltéssel, és hogyan konfigurálja a csempe beállításait:
import com.aspose.slides.*;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide firstSlide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy téglalap auto alakzatot.
IAutoShape shape = firstSlide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 190, 95);
// Állítsa be az alakzat kitöltés típusát Picture-re.
shape.getFillFormat().setFillType(FillType.Picture);
// Töltsön be egy képet és adja hozzá a prezentáció erőforrásaihoz.
IImage sourceImage = Images.fromFile("lotus.png");
IPPImage presentationImage = presentation.getImages().addImage(sourceImage);
sourceImage.dispose();
// Rendelje hozzá a képet az alakzathoz.
IPictureFillFormat pictureFillFormat = shape.getFillFormat().getPictureFillFormat();
pictureFillFormat.getPicture().setImage(presentationImage);
// Állítsa be a kép kitöltési módot és a csempézési tulajdonságokat.
pictureFillFormat.setPictureFillMode(PictureFillMode.Tile);
pictureFillFormat.setTileOffsetX(-32);
pictureFillFormat.setTileOffsetY(-32);
pictureFillFormat.setTileScaleX(50);
pictureFillFormat.setTileScaleY(50);
pictureFillFormat.setTileAlignment(RectangleAlignment.BottomRight);
pictureFillFormat.setTileFlip(TileFlip.FlipBoth);
// Mentse a PPTX fájlt a lemezre.
presentation.save("tile.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Egyszínű kitöltés
A PowerPointban az Egyszínű kitöltés egy formázási lehetőség, amely egyetlen, egységes színnel tölti ki az alakzatot. Ez a háttérszín nem tartalmaz semmilyen színátmenetet, textúrát vagy mintát.
Az Aspose.Slides segítségével egyszínű kitöltést alkalmazhat egy alakzatra a következő lépések szerint:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat FillType értékét
Solid‑ra. - Rendelje hozzá a kívánt kitöltőszínt az alakzathoz.
- Mentse el a módosított prezentációt PPTX fájlként.
Az alábbi Java kód megmutatja, hogyan alkalmazzon egyszínű kitöltést egy téglalapra a PowerPoint dián:
import com.aspose.slides.*;
import java.awt.Color;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely téglalap típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);
// Állítsa be a kitöltés típusát Solid-re.
shape.getFillFormat().setFillType(FillType.Solid);
// Állítsa be a kitöltés színét.
shape.getFillFormat().getSolidFillColor().setColor(Color.YELLOW);
// Mentse a PPTX fájlt a lemezre.
presentation.save("solid_color_fill.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Átlátszóság beállítása
A PowerPointban, amikor egyszínű, színátmenetes, kép‑ vagy textúrakitöltést alkalmazunk alakzatokra, megadhatjuk az átlátszósági szintet is, amely szabályozza a kitöltés átlátszatlanságát. A magasabb átlátszósági érték áttetszőbbé teszi az alakzatot, így a háttér vagy az alatta lévő objektumok részben láthatóvá válnak.
Az Aspose.Slides lehetővé teszi az átlátszóság beállítását a kitöltéshez használt szín alfa komponensének módosításával. Így teheti:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be a FillType értékét
Solid‑ra. - Használja a
Colorosztályt egy átlátszó szín definiálásához (azalphakomponens szabályozza az átlátszóságot). - Mentse el a prezentációt.
Az alábbi Java kód megmutatja, hogyan alkalmazzon átlátszó kitöltőszínt egy téglalapra:
import com.aspose.slides.*;
import java.awt.Color;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy tömör téglalap auto alakzatot.
IAutoShape solidShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);
// Adjon hozzá egy átlátszó téglalap auto alakzatot a tömör alakzat fölé.
IAutoShape transparentShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 80, 80, 150, 75);
transparentShape.getFillFormat().setFillType(FillType.Solid);
transparentShape.getFillFormat().getSolidFillColor().setColor(new Color(255, 255, 0, 204));
// Mentse a PPTX fájlt a lemezre.
presentation.save("shape_transparency.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Alakzatok forgatása
Az Aspose.Slides lehetővé teszi alakzatok forgatását PowerPoint prezentációkban. Ez hasznos lehet a vizuális elemek pontos elhelyezéséhez vagy tervezési igényekhez.
Alakzat forgatásához egy dián kövesse az alábbi lépéseket:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Állítsa be az alakzat forgatási tulajdonságát a kívánt szögre.
- Mentse el a prezentációt.
Az alábbi Java kód bemutatja, hogyan forgassunk egy alakzatot 5 fokkal:
import com.aspose.slides.*;
// Példányosítsa a Presentation osztályt, amely egy prezentációs fájlt képvisel.
Presentation presentation = new Presentation();
try {
// Szerezze meg az első diát.
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy automatikus alakzatot, amely téglalap típusú.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);
// Forgassa el az alakzatot 5 fokkal.
shape.setRotation(5);
// Mentse a PPTX fájlt a lemezre.
presentation.save("shape_rotation.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

3D Fazek Effektusok hozzáadása
Az Aspose.Slides lehetővé teszi 3D fazek effektusok alkalmazását alakzatokra a ThreeDFormat tulajdonságok konfigurálásával.
3D fazek effektusok hozzáadásához egy alakzathoz kövesse a lépéseket:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Konfigurálja az alakzat ThreeDFormat beállításait a fazek paraméterek definiálásához.
- Mentse el a prezentációt.
Az alábbi Java kód megmutatja, hogyan alkalmazzon 3D fazek effektusokat egy alakzatra:
import com.aspose.slides.*;
import java.awt.Color;
// Hozzon létre egy példányt a Presentation osztályból.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// Adjon hozzá egy alakzatot a diához.
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Ellipse, 50, 50, 100, 100);
shape.getFillFormat().setFillType(FillType.Solid);
shape.getFillFormat().getSolidFillColor().setColor(Color.GREEN);
shape.getLineFormat().getFillFormat().setFillType(FillType.Solid);
shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.ORANGE);
shape.getLineFormat().setWidth(2.0);
// Állítsa be az alakzat ThreeDFormat tulajdonságait.
shape.getThreeDFormat().setDepth(4);
shape.getThreeDFormat().getBevelTop().setBevelType(BevelPresetType.Circle);
shape.getThreeDFormat().getBevelTop().setHeight(6);
shape.getThreeDFormat().getBevelTop().setWidth(6);
shape.getThreeDFormat().getCamera().setCameraType(CameraPresetType.OrthographicFront);
shape.getThreeDFormat().getLightRig().setLightType(LightRigPresetType.ThreePt);
shape.getThreeDFormat().getLightRig().setDirection(LightingDirection.Top);
// Mentse a prezentációt PPTX fájlként.
presentation.save("3D_bevel_effect.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

3D Forgatási Effektusok hozzáadása
Az Aspose.Slides lehetővé teszi 3D forgatási effektusok alkalmazását alakzatokra a ThreeDFormat tulajdonságok konfigurálásával.
3D forgatási effektus alkalmazásához:
- Hozzon létre egy példányt a Presentation osztályból.
- Szerezzen referenciát egy diára az indexe alapján.
- Adjon hozzá egy IAutoShape objektumot a diához.
- Használja a setCameraType és a setLightType metódusokat a 3D forgatás meghatározásához.
- Mentse el a prezentációt.
Az alábbi Java kód bemutatja, hogyan alkalmazzon 3D forgatási effektusokat egy alakzatra:
import com.aspose.slides.*;
// Hozzon létre egy példányt a Presentation osztályból.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);
autoShape.getTextFrame().setText("Hello, Aspose!");
autoShape.getThreeDFormat().setDepth(6);
autoShape.getThreeDFormat().getCamera().setRotation(40, 35, 20);
autoShape.getThreeDFormat().getCamera().setCameraType(CameraPresetType.IsometricLeftUp);
autoShape.getThreeDFormat().getLightRig().setLightType(LightRigPresetType.Balanced);
// Mentse a prezentációt PPTX fájlként.
presentation.save("3D_rotation_effect.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Az eredmény:

Fekete-fehér megjelenítés vezérlése alakzatokra
Az IShape.setBlackWhiteMode metódus határozza meg, hogyan jelenjen meg egy adott alakzat, amikor a prezentációt fekete-fehér módban tekintik vagy dolgozzák fel. Ez önmagában nem aktiválja a fekete-fehér megjelenítést, és nem módosítja az alakzat kitöltését, vonalát vagy egyéb formázását normál színmódban.
Használjon egy értéket a BlackWhiteMode osztályból a kívánt viselkedés kiválasztásához. Például az Automatic lehetővé teszi a megjelenítő alkalmazásnak, hogy válasszon konverziót, a Gray és a LightGray szürke árnyalatot alkalmaz, a BlackWhite csak feketét és fehéret használ, a Black és a White egyetlen színt erőltet, a Color megtartja a normál színezést, a Hidden elrejti az alakzatot fekete-fehér módban. A NotDefined azt jelenti, hogy nincs alakzatszintű mód hozzárendelve.
Az alábbi Java kód létrehoz egy színes alakzatot, és fekete-fehér megjelenítésben szürkére állítja:
import com.aspose.slides.*;
import java.awt.Color;
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 100);
shape.getFillFormat().setFillType(FillType.Solid);
shape.getFillFormat().getSolidFillColor().setColor(Color.ORANGE);
// Tartsa meg a narancssárga kitöltést színmódban, de renderelje az alakzatot szürke színnel fekete-fehér módban.
shape.setBlackWhiteMode(BlackWhiteMode.Gray);
presentation.save("shape_black_white_mode.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Normál színmódban a téglalap megtartja narancssárga kitöltését. Fekete-fehér megjelenítési munkafolyamatban szürke színt használ, mert a módja Gray‑re van állítva. Ez lehetővé teszi, hogy a teljes színű diát megőrizze, miközben meghatározza a nyomtatásra, előnézetre vagy egyéb, a prezentáció fekete-fehér beállításait tiszteletben tartó munkafolyamatoknál a kívánt megjelenést.
Formázás visszaállítása
Az alábbi Java kód megmutatja, hogyan állítsa vissza egy dia formázását, és hogyan állítsa vissza a pozíciót, méretet és a helyőrzőkkel rendelkező alakzatok formázását a LayoutSlide alapértelmezett beállításaira:
import com.aspose.slides.*;
Presentation presentation = new Presentation("sample.pptx");
try {
for (ISlide slide : presentation.getSlides()) {
// Állítsa vissza az egyes alakzatokat a dián, amelyeknek helyőrzője van az elrendezésen.
slide.reset();
}
presentation.save("reset_formatting.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
GYIK
Befolyásolja az alakzat formázása a végleges prezentáció fájlméretét?
Csak minimálisan. A beágyazott képek és médiafájlok foglalják el a legtöbb helyet, míg a színek, effektek és színátmenetek paraméterei metaadatként tárolódnak, és gyakorlatilag nem növelik a méretet.
Hogyan lehet azonos formázású alakzatokat felismerni egy dián, hogy csoportosíthassam őket?
Hasonlítsa össze az egyes alakzatok kulcsfontosságú formázási tulajdonságait – kitöltés, vonal és effektus beállításait. Ha minden megfelelő érték megegyezik, tekintse őket azonos stílusúnak, és logikusan csoportosítsa az alakzatokat, ami később egyszerűsíti a stíluskezelést.
Menthetek-e egyedi alakzatstílusok halmazát egy külön fájlba későbbi felhasználásra más prezentációkban?
Igen. Tárolja a kívánt stílusokkal ellátott mintaalakzatokat egy sablon diakészletben vagy egy .POTX sablonfájlban. Új prezentáció létrehozásakor nyissa meg a sablont, klónozza a szükséges stílusú alakzatokat, és alkalmazza a formázást ahol szükséges.