Java'da PowerPoint Şekillerini Biçimlendirme

Giriş

PowerPoint’te slaytlara şekil ekleyebilirsiniz. Şekiller çizgilerden oluştuğu için, kenar çizgilerine efekt uygulayarak biçimlendirebilirsiniz. Ayrıca, şekillerin iç kısımlarının nasıl doldurulacağını kontrol eden ayarları belirleyerek şekilleri biçimlendirebilirsiniz.

PowerPoint’ta şekil biçimlendirme

Aspose.Slides for Java, PowerPoint’te mevcut olan aynı seçenekleri kullanarak şekilleri biçimlendirmenizi sağlayan arabirimler ve yöntemler sunar.

Çizgi Biçimlendirme

Aspose.Slides kullanarak bir şekil için özel bir çizgi stili belirleyebilirsiniz. İşlem aşağıdaki adımlarla gerçekleştirilir:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin line style özelliğini ayarlayın.
  5. Çizgi genişliğini ayarlayın.
  6. Çizginin dash style özelliğini ayarlayın.
  7. Şeklin çizgi rengini ayarlayın.
  8. Değiştirilen sunumu PPTX dosyası olarak kaydedin.

Aşağıdaki kod, bir dikdörtgen AutoShape’i nasıl biçimlendireceğinizi gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Sunum dosyasını temsil eden Presentation sınıfını örnekle.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 75);

    // Dikdörtgen şeklinin doldurma rengini ayarla.
    shape.getFillFormat().setFillType(FillType.NoFill);

    // Dikdörtgenin çizgilerine biçimlendirme uygula.
    shape.getLineFormat().setStyle(LineStyle.ThickThin);
    shape.getLineFormat().setWidth(7);
    shape.getLineFormat().setDashStyle(LineDashStyle.Dash);

    // Dikdörtgenin çizgi rengini ayarla.
    shape.getLineFormat().getFillFormat().setFillType(FillType.Solid);
    shape.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);

    // PPTX dosyasını diske kaydet.
    presentation.save("formatted_lines.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Sunumdaki biçimlendirilmiş çizgiler

Şekil Çizgilerine Çizim Efekti Uygulama

Bir çizim efekti, şekil çizgisinin el çizimi gibi görünmesini sağlar. IShape.getLineFormat ile çizgi ayarlarına, ILineFormat.getSketchFormat ile çizim ayarlarına ve ISketchFormat.setSketchType ile LineSketchType adlı enumeration’dan bir değer seçebilirsiniz.

Aşağıdaki Java kodu, bir LineSketchType.Curved efekti nasıl uygulanacağını, açıkça atanan değerin nasıl okunacağını ve LineSketchType.None ile etkinin nasıl kaldırılacağını gösterir:

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

    // Şeklin çizgi formatına ve onun taslak formatına eriş.
    ISketchFormat sketchFormat = shape.getLineFormat().getSketchFormat();

    // Bir taslak efekti uygula.
    sketchFormat.setSketchType(LineSketchType.Curved);

    // Şekle doğrudan atanmış taslak efektini oku.
    int explicitSketchType = sketchFormat.getSketchType();
    System.out.println("Explicit sketch type: " + explicitSketchType);

    // Taslak efektini kaldır.
    sketchFormat.setSketchType(LineSketchType.None);
} finally {
    presentation.dispose();
}

ISketchFormat.getSketchType tarafından döndürülen değer, şekle doğrudan atanan ayarı temsil eder. Çizgi biçimlendirmesi bir temadan, ana slayttan veya slayt düzeninden devralınabiliyorsa, ILineFormat.getEffective kullanın, ILineFormatEffectiveData.getSketchFormat öğesine erişin ve ISketchFormatEffectiveData.getSketchType değerini okuyun. Etkili değer, devralma çözüldükten sonra gerçekte uygulanan biçimlendirmeyi yansıtır:

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();
}

Bağlama Stilleri Biçimlendirme

İşte üç bağlama tipi seçeneği:

  • Yuvarlak
  • Köşe
  • Pala

Varsayılan olarak PowerPoint, iki çizgiyi bir açıda (örneğin bir şeklin köşesinde) birleştirirken Yuvarlak ayarını kullanır. Ancak, keskin açılarla bir şekil çiziyorsanız Köşe seçeneğini tercih edebilirsiniz.

Sunumdaki bağlama stili

Aşağıdaki Java kodu, yukarıdaki görselde gösterildiği gibi üç dikdörtgenin Miter, Bevel ve Round bağlama tipi ayarlarıyla nasıl oluşturulduğunu gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde üç otomatik şekil ekle.
    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);

    // Her dikdörtgen şeklinin dolgu rengini ayarla.
    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);

    // Çizgi genişliğini ayarla.
    shape1.getLineFormat().setWidth(15);
    shape2.getLineFormat().setWidth(15);
    shape3.getLineFormat().setWidth(15);

    // Her dikdörtgenin çizgi rengini ayarla.
    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);

    // Bağlama stilini ayarla.
    shape1.getLineFormat().setJoinStyle(LineJoinStyle.Miter);
    shape2.getLineFormat().setJoinStyle(LineJoinStyle.Bevel);
    shape3.getLineFormat().setJoinStyle(LineJoinStyle.Round);

    // Her dikdörtgene metin ekle.
    shape1.getTextFrame().setText("Miter Join Style");
    shape2.getTextFrame().setText("Bevel Join Style");
    shape3.getTextFrame().setText("Round Join Style");

    // PPTX dosyasını diske kaydet.
    presentation.save("join_styles.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Gradyan Dolgu

PowerPoint’te Gradyan Dolgu, bir şekle sürekli renk geçişi uygulamanızı sağlayan bir biçimlendirme seçeneğidir. Örneğin, iki veya daha fazla rengi birinin diğerine yavaşça karıştığı şekilde uygulayabilirsiniz.

Aspose.Slides kullanarak bir şekle gradyan dolgu uygulamak için şu adımları izleyin:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin FillType değerini Gradient olarak ayarlayın.
  5. IGradientFormat arabiriminin sunduğu gradyan durak koleksiyonunun add metodlarıyla iki tercih ettiğiniz rengi ve konumlarını ekleyin.
  6. Değiştirilen sunumu PPTX dosyası olarak kaydedin.

Aşağıdaki Java kodu, bir elipse gradyan dolgu etkisi nasıl uygulanacağını gösterir:

import com.aspose.slides.*;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Ellipse tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Ellipse, 50, 50, 150, 75);

    // Elipseye gradyan biçimlendirmesi uygula.
    shape.getFillFormat().setFillType(FillType.Gradient);
    shape.getFillFormat().getGradientFormat().setGradientShape(GradientShape.Linear);

    // Gradyanın yönünü ayarla.
    shape.getFillFormat().getGradientFormat().setGradientDirection(GradientDirection.FromCorner2);

    // İki gradyan durak ekle.
    shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor((float)1.0, PresetColor.Purple);
    shape.getFillFormat().getGradientFormat().getGradientStops().addPresetColor((float)0, PresetColor.Red);

    // PPTX dosyasını diske kaydet.
    presentation.save("gradient_fill.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Gradyan dolgu ile elips

Desen Dolgu

PowerPoint’te Desen Dolgu, iki renkli bir tasarım (nokta, çizgi, çapraz çizgi veya kare gibi) bir şekle uygulamanızı sağlayan bir biçimlendirme seçeneğidir. Desenin ön ve arka plan renklerini özelleştirebilirsiniz.

Aspose.Slides, sunumlarınızın görsel çekiciliğini artırmak için şekillere uygulayabileceğiniz 45’den fazla ön tanımlı desen stili sunar. Ön tanımlı bir deseni seçtikten sonra bile kullanılacak kesin renkleri belirleyebilirsiniz.

Aspose.Slides kullanarak bir şekle desen dolgu uygulamak için şu adımları izleyin:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin FillType değerini Pattern olarak ayarlayın.
  5. Ön tanımlı seçeneklerden bir desen stili seçin.
  6. Desenin Background Color özelliğini ayarlayın.
  7. Desenin Foreground Color özelliğini ayarlayın.
  8. Değiştirilen sunumu PPTX dosyası olarak kaydedin.

Aşağıdaki Java kodu, bir dikdörtgene desen dolgu nasıl uygulanacağını gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);

    // Doldurma türünü Pattern olarak ayarla.
    shape.getFillFormat().setFillType(FillType.Pattern);

    // Desen stilini ayarla.
    shape.getFillFormat().getPatternFormat().setPatternStyle(PatternStyle.Trellis);

    // Desenin arka plan ve ön plan renklerini ayarla.
    shape.getFillFormat().getPatternFormat().getBackColor().setColor(Color.LIGHT_GRAY);
    shape.getFillFormat().getPatternFormat().getForeColor().setColor(Color.YELLOW);

    // PPTX dosyasını diske kaydet.
    presentation.save("pattern_fill.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Desenli dolgu ile dikdörtgen

Resim Dolgu

PowerPoint’te Resim Dolgu, bir şeklin içine bir görüntü yerleştirmenizi sağlayan bir biçimlendirme seçeneğidir; yani görüntüyü şeklin arka planı olarak kullanır.

Aspose.Slides kullanarak bir şekle resim dolgu uygulamak için şu adımları izleyin:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin FillType değerini Picture olarak ayarlayın.
  5. Resim dolgu kipini Tile (veya tercih ettiğiniz başka bir kip) olarak ayarlayın.
  6. Kullanmak istediğiniz görüntüden bir IPPImage nesnesi oluşturun.
  7. Görüntüyü ISlidesPicture.setImage metoduna aktarın.
  8. Değiştirilen sunumu PPTX dosyası olarak kaydedin.

Şu resme sahip bir “lotus.png” dosyamız olduğunu varsayalım:

Lotus resmi

Aşağıdaki Java kodu, bir şekle resim dolgu nasıl uygulanacağını gösterir:

import com.aspose.slides.*;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 255, 130);
    
    // Doldurma türünü Picture olarak ayarla.
    shape.getFillFormat().setFillType(FillType.Picture);

    // Resim dolgu kipini ayarla.
    shape.getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Tile);

    // Bir görüntü yükle ve sunum kaynaklarına ekle.
    IImage image = Images.fromFile("lotus.png");
    IPPImage picture = presentation.getImages().addImage(image);
    image.dispose();

    // Resmi ayarla.
    shape.getFillFormat().getPictureFillFormat().getPicture().setImage(picture);

    // PPTX dosyasını diske kaydet.
    presentation.save("picture_fill.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Resim dolgu ile şekil

Resmi Doku Olarak Döşeme

Döşeme davranışını özelleştirerek bir resmi doku olarak ayarlamak isterseniz, aşağıdaki IPictureFillFormat arabirimi ve PictureFillFormat sınıfının yöntemlerini kullanabilirsiniz:

  • setPictureFillMode: Resim dolgu kipini Tile veya Stretch olarak ayarlar.
  • setTileAlignment: Döşemelerin şekil içinde hizalanmasını belirler.
  • setTileFlip: Döşemenin yatay, dikey ya da her iki yönde çevrilip çevrilmeyeceğini kontrol eder.
  • setTileOffsetX: Döşemenin şeklin orijininden yatay kaydırmasını (point cinsinden) ayarlar.
  • setTileOffsetY: Döşemenin şeklin orijininden dikey kaydırmasını (point cinsinden) ayarlar.
  • setTileScaleX: Döşemenin yatay ölçeğini yüzde olarak tanımlar.
  • setTileScaleY: Döşemenin dikey ölçeğini yüzde olarak tanımlar.

Aşağıdaki kod örneği, döşemeli bir resim dolgulu dikdörtgen şekli ekleyip döşeme seçeneklerini yapılandırmayı gösterir:

import com.aspose.slides.*;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide firstSlide = presentation.getSlides().get_Item(0);

    // Bir dikdörtgen otomatik şekil ekle.
    IAutoShape shape = firstSlide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 190, 95);

    // Şeklin doldurma türünü Picture olarak ayarla.
    shape.getFillFormat().setFillType(FillType.Picture);

    // Görüntüyü yükle ve sunum kaynaklarına ekle.
    IImage sourceImage = Images.fromFile("lotus.png");
    IPPImage presentationImage = presentation.getImages().addImage(sourceImage);
    sourceImage.dispose();

    // Görüntüyü şekle ata.
    IPictureFillFormat pictureFillFormat = shape.getFillFormat().getPictureFillFormat();
    pictureFillFormat.getPicture().setImage(presentationImage);

    // Resim dolgu kipini ve döşeme özelliklerini yapılandır.
    pictureFillFormat.setPictureFillMode(PictureFillMode.Tile);
    pictureFillFormat.setTileOffsetX(-32);
    pictureFillFormat.setTileOffsetY(-32);
    pictureFillFormat.setTileScaleX(50);
    pictureFillFormat.setTileScaleY(50);
    pictureFillFormat.setTileAlignment(RectangleAlignment.BottomRight);
    pictureFillFormat.setTileFlip(TileFlip.FlipBoth);

    // PPTX dosyasını diske kaydet.
    presentation.save("tile.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Döşeme seçenekleri

Katı Renk Dolgu

PowerPoint’te Katı Renk Dolgu, bir şekli tek bir, tekdüze renk ile dolduran bir biçimlendirme seçeneğidir. Bu düz arka plan rengi, gradyan, doku veya desen olmaksızın uygulanır.

Aspose.Slides kullanarak bir şekle katı renk dolgu uygulamak için şu adımları izleyin:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin FillType değerini Solid olarak ayarlayın.
  5. Şekle tercih ettiğiniz dolgu rengini atayın.
  6. Değiştirilen sunumu PPTX dosyası olarak kaydedin.

Aşağıdaki Java kodu, bir PowerPoint slaydındaki bir dikdörtgene katı renk dolgu nasıl uygulanacağını gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);

    // Doldurma türünü Solid olarak ayarla.
    shape.getFillFormat().setFillType(FillType.Solid);

    // Doldurma rengini ayarla.
    shape.getFillFormat().getSolidFillColor().setColor(Color.YELLOW);

    // PPTX dosyasını diske kaydet.
    presentation.save("solid_color_fill.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Katı renk dolgu ile şekil

Şeffaflık Ayarlama

PowerPoint’te bir şekle katı renk, gradyan, resim veya doku dolgusu uyguladığınızda, dolgunun opaklığını kontrol etmek için şeffaflık seviyesini de ayarlayabilirsiniz. Yüksek şeffaflık değeri, şeklin arka planı veya alt nesneleri kısmen görünür hâle getirir.

Aspose.Slides, dolgu için kullanılan rengin alfa değerini ayarlayarak şeffaflık seviyesini belirlemenizi sağlar. İşte nasıl yapılacağı:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. FillType değerini Solid olarak ayarlayın.
  5. Color sınıfını kullanarak alfa bileşeni şeffaflığı kontrol eden bir renk tanımlayın.
  6. Sunumu kaydedin.

Aşağıdaki Java kodu, bir dikdörtgene şeffaf dolgu rengi nasıl uygulanacağını gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Katı bir dikdörtgen otomatik şekil ekle.
    IAutoShape solidShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);

    // Katı şeklin üzerine saydam bir dikdörtgen otomatik şekil ekle.
    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));

    // PPTX dosyasını diske kaydet.
    presentation.save("shape_transparency.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Şeffaf şekil

Şekilleri Döndürme

Aspose.Slides, PowerPoint sunumlarında şekilleri döndürmenizi sağlar. Bu, görsel öğeleri belirli hizalama veya tasarım ihtiyaçlarıyla konumlandırırken faydalı olabilir.

Bir slayttaki bir şekli döndürmek için şu adımları izleyin:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin döndürme özelliğini istediğiniz açıya ayarlayın.
  5. Sunumu kaydedin.

Aşağıdaki Java kodu, bir şekli 5 derece döndürmeyi gösterir:

import com.aspose.slides.*;

// Sunum dosyasını temsil eden Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    // İlk slaytı al.
    ISlide slide = presentation.getSlides().get_Item(0);

    // Rectangle tipinde bir otomatik şekil ekle.
    IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 75);

    // Şekli 5 derece döndür.
    shape.setRotation(5);

    // PPTX dosyasını diske kaydet.
    presentation.save("shape_rotation.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

Şekil döndürme

3B Kırma Efekti Ekleme

Aspose.Slides, şekillerin ThreeDFormat özelliklerini yapılandırarak 3B kırma efektleri uygulamanızı sağlar.

Bir şekle 3B kırma efekti eklemek için şu adımları izleyin:

  1. Presentation sınıfının bir örneğini başlatın.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. Şeklin ThreeDFormat özelliğini yapılandırarak kırma ayarlarını tanımlayın.
  5. Sunumu kaydedin.

Aşağıdaki Java kodu, bir şekle 3B kırma efektleri nasıl uygulanacağını gösterir:

import com.aspose.slides.*;
import java.awt.Color;

// Presentation sınıfının bir örneğini oluştur.
Presentation presentation = new Presentation();
try {
    ISlide slide = presentation.getSlides().get_Item(0);

    // Slayta bir şekil ekle.
    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);

    // Şeklin ThreeDFormat özelliklerini ayarla.
    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);

    // Sunumu PPTX dosyası olarak kaydet.
    presentation.save("3D_bevel_effect.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

3B kırma efekti

3B Döndürme Efekti Ekleme

Aspose.Slides, şekillerin ThreeDFormat özelliklerini yapılandırarak 3B döndürme efektleri uygulamanızı sağlar.

Bir şekle 3B döndürme uygulamak için:

  1. Bir Presentation sınıfının örneğini oluşturun.
  2. İndeksine göre bir slayta referans alın.
  3. Slayta bir IAutoShape ekleyin.
  4. 3B döndürmeyi tanımlamak için setCameraType ve setLightType metodlarını kullanın.
  5. Sunumu kaydedin.

Aşağıdaki Java kodu, bir şekle 3B döndürme efektleri nasıl uygulanacağını gösterir:

import com.aspose.slides.*;

// Presentation sınıfının bir örneğini oluştur.
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);

    // Sunumu PPTX dosyası olarak kaydet.
    presentation.save("3D_rotation_effect.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sonuç:

3B döndürme efekti

Şekiller için Siyah-Beyaz Renderlamayı Kontrol Etme

IShape.setBlackWhiteMode yöntemi, bir sunum siyah-beyaz modunda görüntülendiğinde veya işlendğinde bireysel bir şeklin nasıl renderlanacağını belirler. Bu yöntem tek başına siyah-beyaz görüntülemeyi etkinleştirmez ve normal renk modundaki şeklin dolgu, çizgi veya diğer biçimlendirmelerini değiştirmez.

İstenilen davranışı seçmek için BlackWhiteMode sınıfından bir değer kullanın. Örneğin, Automatic dönüşümün uygulama tarafından seçilmesini sağlar, Gray ve LightGray gri renklendirme yapar, BlackWhite sadece siyah ve beyaz kullanır, Black ve White tek renk zorlar, Color normal renkleri korur ve Hidden şekli siyah-beyaz modunda gizler. NotDefined ise şekil seviyesinde bir mod atanmadığını gösterir.

Aşağıdaki Java kodu, renkli bir şekil oluşturur ve siyah-beyaz görüntüleme modunda gri görünmesini sağlar:

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);

    // Turuncu dolguyu renk modunda tut, ancak şekli siyah-beyaz modunda gri renkyle renderle.
    shape.setBlackWhiteMode(BlackWhiteMode.Gray);

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

Normal renk modunda dikdörtgen turuncu dolgusunu korur. Siyah-beyaz görüntüleme iş akışında, modu Gray olarak ayarlandığı için gri renklendirme kullanılır. Bu sayede tam renkli bir slaytı korurken, yazdırma, ön izleme veya sunumun siyah-beyaz görüntüleme ayarlarını dikkate alan diğer iş akışları için farklı bir görünüm tanımlayabilirsiniz.

Biçimlendirmeyi Sıfırlama

Aşağıdaki Java kodu, bir slaydın biçimlendirmesini nasıl sıfırlayacağınızı ve LayoutSlide üzerindeki tüm yer tutucu şekillerin konum, boyut ve biçimlendirmesini varsayılan ayarlarına nasıl geri getireceğinizi gösterir:

import com.aspose.slides.*;

Presentation presentation = new Presentation("sample.pptx");
try {
    for (ISlide slide : presentation.getSlides()) {
        // Düzen üzerindeki yer tutucuya sahip slayttaki her şekli sıfırla.
        slide.reset();
    }
    presentation.save("reset_formatting.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

SSS

Şekil biçimlendirmesi son sunum dosya boyutunu etkiler mi?

Sadece çok az etkiler. Gömülü görüntüler ve medya dosyaları dosya alanının çoğunu oluştururken, renkler, efektler ve gradyanlar gibi şekil parametreleri meta veri olarak saklanır ve neredeyse ek bir boyut katmaz.

Aynı biçimlendirmeye sahip şekilleri bir slaytta nasıl tespit edip gruplandırabilirim?

Her şeklin temel biçimlendirme özelliklerini—dolgu, çizgi ve efekt ayarlarını—karşılaştırın. Tüm ilgili değerler eşleşiyorsa, stilleri aynı olarak kabul edin ve bu şekilleri mantıksal olarak gruplayın; bu, stil yönetimini sonradan basitleştirir.

Özel şekil stillerinin bir kümesini ayrı bir dosyada saklayıp diğer sunumlarda yeniden kullanabilir miyim?

Evet. İstediğiniz stillere sahip örnek şekilleri bir şablon slayt destesi veya .POTX şablon dosyasında saklayın. Yeni bir sunum oluştururken şablonu açın, ihtiyacınız olan stil verilen şekilleri klonlayın ve gerektiği yerde biçimlendirmelerini yeniden uygulayın.