Hantera presentationsbakgrunder på Android
Introduktion
Soliska färger, gradienter och bilder används ofta som bildbakgrunder för bildspel. Du kan ange bakgrunden för en normal bild (en enskild bild) eller en masterbild (gäller flera bilder samtidigt).

Ange en solid färg som bakgrund för en normal bild
Aspose.Slides låter dig ange en solid färg som bakgrund för en specifik bild i en presentation — även om presentationen använder en masterbild. Ändringen gäller endast den valda bilden.
- Skapa en instans av klassen Presentation.
- Ställ in bildens BackgroundType till
OwnBackground. - Ställ in bildbakgrundens FillType till
Solid. - Använd metoden getSolidFillColor på FillFormat för att ange den solida bakgrundsfärgen.
- Spara den modifierade presentationen.
Följande Java‑exempel visar hur du anger en blå solid färg som bakgrund för en normal bild:
// Skapa en instans av Presentation-klassen.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// Ställ in bakgrundsfärgen på bilden till blå.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Solid);
slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Spara presentationen till disk.
presentation.save("SolidColorBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Ange en solid färg som bakgrund för en masterbild
Aspose.Slides låter dig ange en solid färg som bakgrund för masterbilden i en presentation. Masterbilden fungerar som en mall som styr formatering för alla bilder, så när du väljer en solid färg för masterbildens bakgrund gäller den för varje bild.
- Skapa en instans av klassen Presentation.
- Ställ in masterbildens BackgroundType (via
getMasters) tillOwnBackground. - Ställ in masterbildens bakgrund FillType till
Solid. - Använd metoden getSolidFillColor för att ange den solida bakgrundsfärgen.
- Spara den modifierade presentationen.
Följande Java‑exempel visar hur du anger en solid färg (grön) som bakgrund för en masterbild:
// Skapa en instans av Presentation-klassen.
Presentation presentation = new Presentation();
try {
IMasterSlide masterSlide = presentation.getMasters().get_Item(0);
// Ställ in bakgrundsfärgen för masterbilden till Skogsgrön.
masterSlide.getBackground().setType(BackgroundType.OwnBackground);
masterSlide.getBackground().getFillFormat().setFillType(FillType.Solid);
masterSlide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// Spara presentationen till disk.
presentation.save("MasterSlideBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Ange en gradientbakgrund för en bild
En gradient är en grafisk effekt som skapas genom en gradvis färgförändring. När den används som bildbakgrund kan gradienter göra presentationer mer konstnärliga och professionella. Aspose.Slides låter dig ange en gradientfärg som bakgrund för bilder.
- Skapa en instans av klassen Presentation.
- Ställ in bildens BackgroundType till
OwnBackground. - Ställ in bildbakgrundens FillType till
Gradient. - Använd metoden getGradientFormat på FillFormat för att konfigurera dina föredragna gradientinställningar.
- Spara den modifierade presentationen.
Följande Java‑exempel visar hur du anger en gradientfärg som bakgrund för en bild:
// Skapa en instans av Presentation-klassen.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// Tillämpa en gradienteffekt på bakgrunden.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Gradient);
slide.getBackground().getFillFormat().getGradientFormat().setTileFlip(TileFlip.FlipBoth);
// Spara presentationen till disk.
presentation.save("GradientBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Ange en bild som bakgrund för en bild
Förutom solida och gradientfyllningar låter Aspose.Slides dig använda bilder som bildbakgrunder.
- Skapa en instans av klassen Presentation.
- Ställ in bildens BackgroundType till
OwnBackground. - Ställ in bildbakgrundens FillType till
Picture. - Läs in bilden du vill använda som bildbakgrund.
- Lägg till bilden i presentationens bildsamling.
- Använd metoden getPictureFillFormat på FillFormat för att tilldela bilden som bakgrund.
- Spara den modifierade presentationen.
Följande Java‑exempel visar hur du anger en bild som bakgrund för en bild:
// Skapa en instans av Presentation-klassen.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// Ange egenskaper för bakgrundsbilden.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Picture);
slide.getBackground().getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Stretch);
// Läs in bilden.
IImage image = Images.fromFile("Tulips.jpg");
// Lägg till bilden i presentationens bildsamling.
IPPImage ppImage = presentation.getImages().addImage(image);
image.dispose();
slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().setImage(ppImage);
// Spara presentationen till disk.
presentation.save("ImageAsBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Följande kodexempel visar hur du ställer in bakgrundsfyllningstypen till en tessellerad bild och ändrar tesselleringsegenskaperna:
Presentation presentation = new Presentation();
try {
ISlide firstSlide = presentation.getSlides().get_Item(0);
IBackground background = firstSlide.getBackground();
background.setType(BackgroundType.OwnBackground);
background.getFillFormat().setFillType(FillType.Picture);
IImage newImage = Images.fromFile("image.png");
IPPImage ppImage = presentation.getImages().addImage(newImage);
newImage.dispose();
// Ange bilden som används för bakgrundsfyllningen.
IPictureFillFormat backPictureFillFormat = background.getFillFormat().getPictureFillFormat();
backPictureFillFormat.getPicture().setImage(ppImage);
// Ställ in bildfyllningsläget till Tile och justera tile egenskaperna.
backPictureFillFormat.setPictureFillMode(PictureFillMode.Tile);
backPictureFillFormat.setTileOffsetX(15f);
backPictureFillFormat.setTileOffsetY(15f);
backPictureFillFormat.setTileScaleX(46f);
backPictureFillFormat.setTileScaleY(87f);
backPictureFillFormat.setTileAlignment(RectangleAlignment.Center);
backPictureFillFormat.setTileFlip(TileFlip.FlipY);
presentation.save("TileBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Ändra bakgrundsbildens transparens
Du kanske vill justera transparensen för en bildbakgrund för att få bildens innehåll att framträda tydligare. Följande Java‑kod visar hur du ändrar transparensen för en bildbakgrund:
int transparencyValue = 30; // Till exempel.
// Hämta samlingen av bildtransformationsoperationer.
IImageTransformOperationCollection imageTransform = slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().getImageTransform();
// Hitta en befintlig transparenseffekt med fast procentandel.
IAlphaModulateFixed transparencyOperation = null;
for (IImageTransformOperation operation : imageTransform) {
if (operation instanceof IAlphaModulateFixed) {
transparencyOperation = (IAlphaModulateFixed)operation;
break;
}
}
// Ställ in det nya transparensvärdet.
if (transparencyOperation == null) {
imageTransform.addAlphaModulateFixedEffect(100 - transparencyValue);
}
else {
transparencyOperation.setAmount(100 - transparencyValue);
}
Hämta bildens bakgrundsvärde
Aspose.Slides tillhandahåller gränssnittet IBackgroundEffectiveData för att hämta en bilds effektiva bakgrundsvärden. Detta gränssnitt exponerar den effektiva FillFormat och EffectFormat.
Genom att använda metoden getBackground i klassen BaseSlide kan du hämta den effektiva bakgrunden för en bild.
Följande Java‑exempel visar hur du hämtar en bilds effektiva bakgrundsvärde:
// Skapa en instans av Presentation-klassen.
Presentation presentation = new Presentation("Sample.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
// Hämta den effektiva bakgrunden, med hänsyn till master, layout och tema.
IBackgroundEffectiveData effBackground = slide.getBackground().getEffective();
if (effBackground.getFillFormat().getFillType() == FillType.Solid)
System.out.println("Fill color: " + effBackground.getFillFormat().getSolidFillColor());
else
System.out.println("Fill type: " + effBackground.getFillFormat().getFillType());
} finally {
presentation.dispose();
}
Vanliga frågor
Kan jag återställa en anpassad bakgrund och återfå temats/layoutens bakgrund?
Ja. Ta bort bildens anpassade fyllning, så kommer bakgrunden återigen att ärvas från den motsvarande layout/master bilden (dvs. temats bakgrund).
Vad händer med bakgrunden om jag ändrar presentationens tema senare?
Om en bild har sin egen fyllning kommer den att förbli oförändrad. Om bakgrunden ärvs från layout/master, uppdateras den för att matcha det nya temat.