Formátování tvarů PowerPoint v JavaScriptu

Úvod

V PowerPointu můžete do snímků přidávat tvary. Protože tvary jsou složeny z čar, můžete je formátovat úpravou nebo použitím efektů na jejich obrysech. Navíc můžete tvary formátovat nastavením, která řídí, jak jsou vyplněny jejich vnitřky.

format-shape-powerpoint

Aspose.Slides pro Node.js přes Java poskytuje třídy a metody, které umožňují formátovat tvary pomocí stejných možností, jaké jsou k dispozici v PowerPointu.

Formátování čar

Pomocí Aspose.Slides můžete pro tvar určit vlastní styl čáry. Následující kroky popisují postup:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte styl čáry tvaru.
  5. Nastavte šířku čáry.
  6. Nastavte styl čáry čáry.
  7. Nastavte barvu čáry pro tvar.
  8. Uložte upravenou prezentaci jako soubor PPTX.

Následující kód ukazuje, jak formátovat obdélníkový AutoShape:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 150, 150, 75);

    // Odstraňte výplň z obdélníkového tvaru.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));

    // Použijte formátování na čáry obdélníku.
    shape.getLineFormat().setStyle(java.newByte(aspose.slides.LineStyle.ThickThin));
    shape.getLineFormat().setWidth(7);
    shape.getLineFormat().setDashStyle(java.newByte(aspose.slides.LineDashStyle.Dash));

    // Nastavte barvu čáry obdélníku.
    shape.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));

    // Uložte soubor PPTX na disk.
    presentation.save("formatted_lines.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The formatted lines in the presentation

Použití skicových efektů na čáry tvaru

Skicový efekt způsobí, že čára tvaru vypadá ručně kreslená. Použijte Shape.getLineFormat pro přístup k nastavením čáry, LineFormat.getSketchFormat pro přístup k nastavením skici a SketchFormat.setSketchType pro výběr hodnoty z výčtu LineSketchType.

Následující kód JavaScript ukazuje, jak použít efekt LineSketchType.Curved , přečíst explicitně přiřazenou hodnotu a odstranit efekt pomocí LineSketchType.None:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

let presentation = new aspose.slides.Presentation();
try {
    let slide = presentation.getSlides().get_Item(0);
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 200, 100);

    // Přístup k formátu čáry tvaru a jeho skicovému formátu.
    let sketchFormat = shape.getLineFormat().getSketchFormat();

    // Aplikujte skicový efekt.
    sketchFormat.setSketchType(aspose.slides.LineSketchType.Curved);

    // Přečtěte skicový efekt přiřazený přímo tvaru.
    let explicitSketchType = sketchFormat.getSketchType();
    console.log("Explicit sketch type: " + explicitSketchType);

    // Odstraňte skicový efekt.
    sketchFormat.setSketchType(aspose.slides.LineSketchType.None);
} finally {
    presentation.dispose();
}

Cílí hodnota vrácená metodou SketchFormat.getSketchType představuje nastavení přiřazené přímo tvaru. Pokud lze formátování čáry zdědit z motivu, hlavního snímku nebo rozložení snímku, použijte LineFormat.getEffective, zavolejte getSketchFormat na vráceném objektu a poté jeho metodu getSketchType. Efektivní hodnota odráží formátování, které je skutečně použito po vyřešení dědičnosti:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

let presentation = new aspose.slides.Presentation("presentation.pptx");
try {
    let shape = presentation.getSlides().get_Item(0).getShapes().get_Item(0);
    let lineFormat = shape.getLineFormat();

    let explicitSketchType = lineFormat.getSketchFormat().getSketchType();
    let effectiveLineFormat = lineFormat.getEffective();
    let effectiveSketchType = effectiveLineFormat.getSketchFormat().getSketchType();

    console.log("Explicit sketch type: " + explicitSketchType);
    console.log("Effective sketch type: " + effectiveSketchType);
} finally {
    presentation.dispose();
}

Formátování stylů spojení

Zde jsou tři možnosti typu spojení:

  • Kulatý
  • Miter
  • Šikmý

Ve výchozím nastavení, když PowerPoint spojuje dvě čáry pod úhlem (např. na rohu tvaru), používá nastavení Kulatý. Pokud však kreslíte tvar s ostrými úhly, můžete upřednostnit možnost Miter.

The join style in the presentation

Následující kód JavaScript ukazuje, jak byly tři obdélníky (jak je vidět na výše uvedeném obrázku) vytvořeny pomocí nastavení typu spojení Miter, Bevel a Round:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte tři automatické tvary typu Obdélník.
    let shape1 = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 20, 20, 150, 75);
    let shape2 = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 210, 20, 150, 75);
    let shape3 = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 20, 135, 150, 75);

    // Nastavte barvu výplně pro každý obdélníkový tvar.
    shape1.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape1.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLACK"));
    shape2.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape2.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLACK"));
    shape3.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape3.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLACK"));

    // Nastavte šířku čáry.
    shape1.getLineFormat().setWidth(15);
    shape2.getLineFormat().setWidth(15);
    shape3.getLineFormat().setWidth(15);

    // Nastavte barvu čáry pro každý obdélník.
    shape1.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape1.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));
    shape2.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape2.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));
    shape3.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape3.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));

    // Nastavte styl spojení.
    shape1.getLineFormat().setJoinStyle(java.newByte(aspose.slides.LineJoinStyle.Miter));
    shape2.getLineFormat().setJoinStyle(java.newByte(aspose.slides.LineJoinStyle.Bevel));
    shape3.getLineFormat().setJoinStyle(java.newByte(aspose.slides.LineJoinStyle.Round));

    // Přidejte text ke každému obdélníku.
    shape1.getTextFrame().setText("Miter Join Style");
    shape2.getTextFrame().setText("Bevel Join Style");
    shape3.getTextFrame().setText("Round Join Style");

    // Uložte soubor PPTX na disk.
    presentation.save("join_styles.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Přechodové vyplnění

V PowerPointu je Gradient Fill formátovací volba, která umožňuje aplikovat plynulý přechod barev na tvar. Například můžete použít dvě nebo více barev tak, že jedna postupně přechází v druhou.

Zde je návod, jak pomocí Aspose.Slides aplikovat přechodové vyplnění na tvar:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte FillType tvaru na Gradient.
  5. Přidejte své dvě preferované barvy s definovanými pozicemi pomocí metod add ze sbírky gradientových stop, kterou vystavuje třída GradientFormat.
  6. Uložte upravenou prezentaci jako soubor PPTX.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Elipsa.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Ellipse, 50, 50, 150, 75);

    // Použijte gradientové formátování na elipsu.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Gradient));
    shape.getFillFormat().getGradientFormat().setGradientShape(java.newByte(aspose.slides.GradientShape.Linear));

    // Nastavte směr gradientu.
    shape.getFillFormat().getGradientFormat().setGradientDirection(aspose.slides.GradientDirection.FromCorner2);

    // Přidejte dva gradientové body.
    shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor(1.0, aspose.slides.PresetColor.Purple);
    shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor(0, aspose.slides.PresetColor.Red);

    // Uložte soubor PPTX na disk.
    presentation.save("gradient_fill.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The ellipse with gradient fill

Vzorkové vyplnění

V PowerPointu je Pattern Fill formátovací volba, která vám umožní použít dvoubarevný vzor – například tečky, pruhy, křížové šrafování nebo kostkový vzor – na tvar. Můžete si zvolit vlastní barvy pro popředí a pozadí vzoru.

Aspose.Slides poskytuje více než 45 předdefinovaných stylů vzorů, které můžete aplikovat na tvary pro zvýšení vizuálního dojmu vašich prezentací. I po výběru předdefinovaného vzoru můžete stále určit přesné barvy, které se mají použít.

Zde je návod, jak pomocí Aspose.Slides aplikovat vzorkové vyplnění na tvar:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte FillType tvaru na Pattern.
  5. Vyberte styl vzoru z předdefinovaných možností.
  6. Nastavte Background Color vzoru.
  7. Nastavte Foreground Color vzoru.
  8. Uložte upravenou prezentaci jako soubor PPTX.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 150, 75);

    // Nastavte typ výplně na Vzor.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Pattern));

    // Nastavte styl vzoru.
    shape.getFillFormat().getPatternFormat().setPatternStyle(java.newByte(aspose.slides.PatternStyle.Trellis));

    // Nastavte barvy pozadí a popředí vzoru.
    shape.getFillFormat().getPatternFormat().getBackColor().setColor(java.getStaticFieldValue("java.awt.Color", "LIGHT_GRAY"));
    shape.getFillFormat().getPatternFormat().getForeColor().setColor(java.getStaticFieldValue("java.awt.Color", "YELLOW"));

    // Uložte soubor PPTX na disk.
    presentation.save("pattern_fill.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The rectangle with pattern fill

Obrázkové vyplnění

V PowerPointu je Picture Fill formátovací volba, která vám umožní vložit obrázek uvnitř tvaru – efektivně použít obrázek jako pozadí tvaru.

Zde je postup, jak pomocí Aspose.Slides aplikovat obrázkové vyplnění na tvar:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte FillType tvaru na Picture.
  5. Nastavte režim obrázkového vyplnění na Tile (nebo jiný preferovaný režim).
  6. Vytvořte objekt PPImage z obrázku, který chcete použít.
  7. Předávejte obrázek metodě ISlidesPicture.setImage.
  8. Uložte upravenou prezentaci jako soubor PPTX.

Předpokládejme, že máme soubor “lotus.png” s následujícím obrázkem:

The lotus picture

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 255, 130);
    
    // Nastavte typ výplně na Obrázek.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Picture));

    // Nastavte režim obrázkového vyplnění.
    shape.getFillFormat().getPictureFillFormat().setPictureFillMode(aspose.slides.PictureFillMode.Tile);

    // Načtěte obrázek a přidejte jej do zdrojů prezentace.
    let image = aspose.slides.Images.fromFile("lotus.png");
    let picture = presentation.getImages().addImage(image);
    image.dispose();

    // Nastavte obrázek.
    shape.getFillFormat().getPictureFillFormat().getPicture().setImage(picture);

    // Uložte soubor PPTX na disk.
    presentation.save("picture_fill.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The shape with picture fill

Dlaždicovat obrázek jako texturu

Pokud chcete nastavit dlaždicovaný obrázek jako texturu a přizpůsobit chování dlaždicování, můžete použít následující metody třídy PictureFillFormat:

  • setPictureFillMode: Nastavuje režim obrázkového vyplnění – buď Tile, nebo Stretch.
  • setTileAlignment: Určuje zarovnání dlaždic uvnitř tvaru.
  • setTileFlip: Řídí, zda je dlaždice otočena horizontálně, vertikálně nebo obojí.
  • setTileOffsetX: Nastavuje vodorovný posun dlaždice (v bodech) od počátku tvaru.
  • setTileOffsetY: Nastavuje svislý posun dlaždice (v bodech) od počátku tvaru.
  • setTileScaleX: Definuje vodorovné měřítko dlaždice v procentech.
  • setTileScaleY: Definuje svislé měřítko dlaždice v procentech.

Následující ukázka kódu ukazuje, jak přidat obdélníkový tvar s dlaždicovým obrázkovým vyplněním a nakonfigurovat možnosti dlaždic:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let firstSlide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = firstSlide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 190, 95);

    // Nastavte typ výplně tvaru na Obrázek.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Picture));

    // Načtěte obrázek a přidejte jej do zdrojů prezentace.
    let sourceImage = aspose.slides.Images.fromFile("lotus.png");
    let presentationImage = presentation.getImages().addImage(sourceImage);
    sourceImage.dispose();

    // Přiřaďte obrázek k tvaru.
    let pictureFillFormat = shape.getFillFormat().getPictureFillFormat();
    pictureFillFormat.getPicture().setImage(presentationImage);

    // Nakonfigurujte režim obrázkového vyplnění a vlastnosti dlaždicování.
    pictureFillFormat.setPictureFillMode(aspose.slides.PictureFillMode.Tile);
    pictureFillFormat.setTileOffsetX(-32);
    pictureFillFormat.setTileOffsetY(-32);
    pictureFillFormat.setTileScaleX(50);
    pictureFillFormat.setTileScaleY(50);
    pictureFillFormat.setTileAlignment(java.newByte(aspose.slides.RectangleAlignment.BottomRight));
    pictureFillFormat.setTileFlip(aspose.slides.TileFlip.FlipBoth);

    // Uložte soubor PPTX na disk.
    presentation.save("tile.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The tile options

Jednobarevné vyplnění

V PowerPointu je Solid Color Fill formátovací volba, která vyplní tvar jednou, jednotnou barvou. Tato jednobarevná podkladová barva je aplikována bez jakýchkoli přechodů, textur nebo vzorů.

Chcete-li pomocí Aspose.Slides aplikovat jednobarevné vyplnění na tvar, postupujte takto:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte FillType tvaru na Solid.
  5. Přiřaďte požadovanou barvu výplně tvaru.
  6. Uložte upravenou prezentaci jako soubor PPTX.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 150, 75);

    // Nastavte typ výplně na jednobarevnou.
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));

    // Nastavte barvu výplně.
    shape.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "YELLOW"));

    // Uložte soubor PPTX na disk.
    presentation.save("solid_color_fill.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The shape with solid color fill

Nastavit průhlednost

V PowerPointu, když použijete jednobarevnou, přechodovou, obrázkovou nebo texturovou výplň na tvary, můžete také nastavit úroveň průhlednosti, která řídí neprůhlednost výplně. Vyšší hodnota průhlednosti způsobí, že tvar bude průhlednější a podklad nebo podkladové objekty budou částečně viditelné.

Aspose.Slides umožňuje nastavit úroveň průhlednosti úpravou alfa komponenty barvy použité pro výplň. Postup:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte FillType tvaru na Solid.
  5. Použijte Color k definování barvy s průhledností (komponenta alpha řídí průhlednost).
  6. Uložte prezentaci.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický obdélníkový tvar s plnou výplní.
    let solidShape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 150, 75);

    // Přidejte průhledný obdélníkový automatický tvar nad plný tvar.
    let transparentShape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 80, 80, 150, 75);
    transparentShape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    transparentShape.getFillFormat().getSolidFillColor().setColor(java.newInstanceSync("java.awt.Color", 255, 255, 0, 204));

    // Uložte soubor PPTX na disk.
    presentation.save("shape_transparency.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The transparent shape

Otočit tvary

Aspose.Slides vám umožňuje otáčet tvary v prezentacích PowerPoint. To může být užitečné při umisťování vizuálních prvků s konkrétním zarovnáním nebo designovými požadavky.

Chcete-li otočit tvar na snímku, postupujte takto:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nastavte vlastnost otáčení tvaru na požadovaný úhel.
  5. Uložte prezentaci.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

// Vytvořte instanci třídy Presentation, která představuje soubor prezentace.
let presentation = new aspose.slides.Presentation();
try {
    // Získejte první snímek.
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte automatický tvar typu Obdélník.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 150, 75);

    // Otočte tvar o 5 stupňů.
    shape.setRotation(5);

    // Uložte soubor PPTX na disk.
    presentation.save("shape_rotation.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The shape rotation

Přidat 3D zkosené efekty

Aspose.Slides umožňuje aplikovat 3D zkosené efekty na tvary konfigurací jejich vlastností ThreeDFormat.

Chcete-li přidat 3D zkosené efekty na tvar, postupujte takto:

  1. Instancujte třídu Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Nakonfigurujte ThreeDFormat tvaru pro definování nastavení zkosení.
  5. Uložte prezentaci.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

// Vytvořte instanci třídy Presentation.
let presentation = new aspose.slides.Presentation();
try {
    let slide = presentation.getSlides().get_Item(0);

    // Přidejte tvar na snímek.
    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Ellipse, 50, 50, 100, 100);
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "GREEN"));
    shape.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "ORANGE"));
    shape.getLineFormat().setWidth(2.0);

    // Nastavte vlastnosti ThreeDFormat tvaru.
    shape.getThreeDFormat().setDepth(4);
    shape.getThreeDFormat().getBevelTop().setBevelType(aspose.slides.BevelPresetType.Circle);
    shape.getThreeDFormat().getBevelTop().setHeight(6);
    shape.getThreeDFormat().getBevelTop().setWidth(6);
    shape.getThreeDFormat().getCamera().setCameraType(aspose.slides.CameraPresetType.OrthographicFront);
    shape.getThreeDFormat().getLightRig().setLightType(aspose.slides.LightRigPresetType.ThreePt);
    shape.getThreeDFormat().getLightRig().setDirection(aspose.slides.LightingDirection.Top);

    // Uložte prezentaci jako soubor PPTX.
    presentation.save("3D_bevel_effect.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The 3D bevel effect

Přidat 3D rotační efekty

Aspose.Slides umožňuje aplikovat 3D rotační efekty na tvary konfigurací jejich vlastností ThreeDFormat.

Chcete-li aplikovat 3D otáčení na tvar:

  1. Vytvořte instanci třídy Presentation.
  2. Získejte odkaz na snímek podle jeho indexu.
  3. Přidejte na snímek AutoShape.
  4. Použijte setCameraType a setLightType pro definování 3D otáčení.
  5. Uložte prezentaci.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

// Vytvořte instanci třídy Presentation.
let presentation = new aspose.slides.Presentation();
try {
    let slide = presentation.getSlides().get_Item(0);

    let autoShape = slide.getShapes().addAutoShape(aspose.slides.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(aspose.slides.CameraPresetType.IsometricLeftUp);
    autoShape.getThreeDFormat().getLightRig().setLightType(aspose.slides.LightRigPresetType.Balanced);

    // Uložte prezentaci jako soubor PPTX.
    presentation.save("3D_rotation_effect.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Výsledek:

The 3D rotation effect

Ovládání černobílého vykreslování pro tvary

Metoda Shape.setBlackWhiteMode určuje, jak je jednotlivý tvar vykreslován, když je prezentace zobrazena nebo zpracována v černobílém režimu. Tato metoda sama o sobě neaktivuje černobílý zobrazovací režim a nemění výplň, čáru ani jiné formátování tvaru v normálním barevném režimu.

Použijte hodnotu z výčtu BlackWhiteMode pro výběr požadovaného chování. Například Automatic nechá aplikaci pro vykreslování zvolit převod, Gray a LightGray používají šedé zbarvení, BlackWhite používá pouze černou a bílou, Black a White vynutí jednu barvu, Color zachová normální barevnost a Hidden vynechá tvar v černobílém režimu. NotDefined znamená, že není přiřazen žádný režim na úrovni tvaru.

Následující kód JavaScript vytváří barevný tvar a zobrazí jej šedě v černobílém režimu:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

let presentation = new aspose.slides.Presentation();
try {
    let slide = presentation.getSlides().get_Item(0);

    let shape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 50, 50, 200, 100);
    shape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
    shape.getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "ORANGE"));

    // Uchovat oranžovou výplň v barevném režimu, ale vykreslit tvar se šedým zbarvením v černobílém režimu.
    shape.setBlackWhiteMode(java.newByte(aspose.slides.BlackWhiteMode.Gray));

    presentation.save("shape_black_white_mode.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

V normálním barevném režimu si obdélník zachovává oranžovou výplň. V černobílém pracovním postupu používá šedé zbarvení, protože jeho režim je nastaven na Gray. To vám umožní zachovat plnobarevný snímek a současně definovat odlišný vzhled pro tisk, náhled nebo jiné workflowy, které respektují nastavení černobílého zobrazování prezentace.

Resetovat formátování

Následující kód JavaScript ukazuje, jak resetovat formátování snímku a vrátit pozici, velikost a formátování všech tvarů s placeholdery na LayoutSlide na výchozí nastavení:

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

let presentation = new aspose.slides.Presentation("sample.pptx");
try {
    for (let i = 0; i < presentation.getSlides().size(); i++) {
        let slide = presentation.getSlides().get_Item(i);
        // Resetujte každý tvar na snímku, který má zástupný prvek v rozvržení.
        slide.reset();
    }
    presentation.save("reset_formatting.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Často kladené otázky

Ovlivňuje formátování tvarů konečnou velikost souboru prezentace?

Pouze minimálně. Vložené obrázky a média zaujímají většinu místa v souboru, zatímco parametry tvarů jako barvy, efekty a přechody jsou uloženy jako metadata a prakticky nepřidávají žádnou další velikost.

Jak mohu na snímku zjistit tvary, které mají identické formátování, abych je mohl seskupit?

Porovnejte klíčové vlastnosti formátování každého tvaru – nastavení výplně, čáry a efektů. Pokud se všechny odpovídající hodnoty shodují, považujte jejich styly za identické a logicky je seskupte, což usnadní následnou správu stylů.

Mohu uložit sadu vlastních stylů tvarů do samostatného souboru pro opětovné použití v jiných prezentacích?

Ano. Uložte ukázkové tvary s požadovanými styly do šablony snímků nebo souboru .POTX. Při vytváření nové prezentace otevřete šablonu, zkopírujte (klonujte) stylované tvary, které potřebujete, a znovu aplikujte jejich formátování tam, kde je to potřeba.