Ajouter des formes de ligne aux présentations sur Android

Créer une ligne simple

Pour ajouter une ligne simple à une diapositive sélectionnée de la présentation, suivez les étapes ci‑dessous :

  • Créez une instance de la classe Presentation.
  • Obtenez la référence d’une diapositive en utilisant son index.
  • Ajoutez une AutoShape de type Ligne en utilisant la méthode addAutoShape exposée par l’objet IShapeCollection.
  • Enregistrez la présentation modifiée au format PPTX.

Dans l’exemple ci‑dessous, nous avons ajouté une ligne à la première diapositive de la présentation.

// Instancie la classe PresentationEx qui représente le fichier PPTX
Presentation pres = new Presentation();
try {
    // Obtenir la première diapositive
    ISlide sld = pres.getSlides().get_Item(0);
    
    // Ajouter une AutoShape de type ligne
    sld.getShapes().addAutoShape(ShapeType.Line, 50, 150, 300, 0);
    
    // Enregistrer le PPTX sur le disque
    pres.save("LineShape.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Créer une ligne en forme de flèche

Aspose.Slides for Android via Java permet également aux développeurs de configurer certaines propriétés de la ligne afin de la rendre plus attrayante. Essayons de configurer quelques propriétés d’une ligne pour qu’elle ressemble à une flèche. Veuillez suivre les étapes ci‑dessous pour ce faire :

  • Créez une instance de la classe Presentation.
  • Obtenez la référence d’une diapositive en utilisant son index.
  • Ajoutez une AutoShape de type Ligne en utilisant la méthode addAutoShape exposée par l’objet IShapeCollection.
  • Définissez le Line Style sur l’un des styles proposés par Aspose.Slides for Android via Java.
  • Définissez la largeur de la ligne.
  • Définissez le Dash Style de la ligne sur l’un des styles proposés par Aspose.Slides for Android via Java.
  • Définissez le Arrow Head Style et la Length du point de départ de la ligne.
  • Définissez le Arrow Head Style et la Length du point d’arrivée de la ligne.
  • Enregistrez la présentation modifiée au format PPTX.
// Instancie la classe PresentationEx qui représente le fichier PPTX
Presentation pres = new Presentation();
try {
    // Obtient la première diapositive
    ISlide sld = pres.getSlides().get_Item(0);

    // Ajoute une AutoShape de type ligne
    IAutoShape shp = sld.getShapes().addAutoShape(ShapeType.Line, 50, 150, 300, 0);

    // Applique un certain formatage à la ligne
    shp.getLineFormat().setStyle(LineStyle.ThickBetweenThin);
    shp.getLineFormat().setWidth(10);

    shp.getLineFormat().setDashStyle(LineDashStyle.DashDot);

    shp.getLineFormat().setBeginArrowheadLength(LineArrowheadLength.Short);
    shp.getLineFormat().setBeginArrowheadStyle(LineArrowheadStyle.Oval);

    shp.getLineFormat().setEndArrowheadLength(LineArrowheadLength.Long);
    shp.getLineFormat().setEndArrowheadStyle(LineArrowheadStyle.Triangle);

    shp.getLineFormat().getFillFormat().setFillType(FillType.Solid);
    shp.getLineFormat().getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.Maroon));

    // Enregistre le PPTX sur le disque
    pres.save("LineShape.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

FAQ

Puis‑je convertir une ligne ordinaire en connecteur pour qu’elle « s’ajuste » aux formes ?

Non. Une ligne ordinaire (une AutoShape de type Line) ne devient pas automatiquement un connecteur. Pour qu’elle s’ajuste aux formes, utilisez le type dédié Connector ainsi que les APIs correspondantes pour les connexions.

Que faire si les propriétés d’une ligne sont héritées du thème et qu’il est difficile de déterminer les valeurs finales ?

Lire les propriétés effectives via les interfaces ILineFormatEffectiveData/ILineFillFormatEffectiveData — celles‑ci tiennent déjà compte de l’héritage et des styles du thème.

Puis‑je verrouiller une ligne contre la modification (déplacement, redimensionnement) ?

Oui. Les formes offrent des objets de verrouillage qui vous permettent de interdire les opérations de modification.