Améliorez vos présentations avec AutoFit sur Android
Par défaut, lorsque vous ajoutez une zone de texte, Microsoft PowerPoint utilise le paramètre Resize shape to fix text pour la zone de texte — il redimensionne automatiquement la zone de texte afin que son texte y tienne toujours.

- Lorsque le texte de la zone de texte devient plus long ou plus grand, PowerPoint agrandit automatiquement la zone de texte — augmente sa hauteur — pour lui permettre de contenir plus de texte.
- Lorsque le texte de la zone de texte devient plus court ou plus petit, PowerPoint réduit automatiquement la zone de texte — diminue sa hauteur — pour éliminer l’espace redondant.
Dans PowerPoint, voici les 4 paramètres ou options importants qui contrôlent le comportement d’autofit d’une zone de texte :
- Do not Autofit
- Shrink text on overflow
- Resize shape to fit text
- Wrap text in shape.

Aspose.Slides for Android via Java propose des options similaires — certaines propriétés de la classe TextFrameFormat — qui vous permettent de contrôler le comportement d’autofit des zones de texte dans les présentations.
Resize a Shape to Fit Text
Si vous voulez que le texte d’une zone tienne toujours dans cette zone après des modifications, vous devez utiliser l’option Resize shape to fix text. Pour spécifier ce paramètre, définissez la propriété AutofitType (de la classe TextFrameFormat) sur Shape.

Ce code Java montre comment spécifier qu’un texte doit toujours tenir dans sa zone dans une présentation PowerPoint :
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 30, 30, 350, 100);
Portion portion = new Portion("lorem ipsum...");
portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
autoShape.getTextFrame().getParagraphs().get_Item(0).getPortions().add(portion);
ITextFrameFormat textFrameFormat = autoShape.getTextFrame().getTextFrameFormat();
textFrameFormat.setAutofitType(TextAutofitType.Shape);
pres.save("Output-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Si le texte devient plus long ou plus grand, la zone de texte sera redimensionnée automatiquement (augmentation de la hauteur) afin que tout le texte y rentre. Si le texte devient plus court, l’inverse se produit.
Do Not Autofit
Si vous voulez qu’une zone de texte ou une forme conserve ses dimensions quel que soit le texte qu’elle contient, vous devez utiliser l’option Do not Autofit. Pour spécifier ce paramètre, définissez la propriété AutofitType (de la classe TextFrameFormat) sur None.

Ce code Java montre comment spécifier qu’une zone de texte doit toujours conserver ses dimensions dans une présentation PowerPoint :
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 30, 30, 350, 100);
Portion portion = new Portion("lorem ipsum...");
portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
autoShape.getTextFrame().getParagraphs().get_Item(0).getPortions().add(portion);
ITextFrameFormat textFrameFormat = autoShape.getTextFrame().getTextFrameFormat();
textFrameFormat.setAutofitType(TextAutofitType.None);
pres.save("Output-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Lorsque le texte devient trop long pour sa zone, il déborde.
Shrink Text on Overflow
Si un texte devient trop long pour sa zone, l’option Shrink text on overflow vous permet de spécifier que la taille et l’espacement du texte doivent être réduits afin qu’il tienne dans la zone. Pour spécifier ce paramètre, définissez la propriété AutofitType (de la classe TextFrameFormat) sur Normal.

Ce code Java montre comment spécifier qu’un texte doit être rétréci en cas de dépassement dans une présentation PowerPoint :
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 30, 30, 350, 100);
Portion portion = new Portion("lorem ipsum...");
portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
autoShape.getTextFrame().getParagraphs().get_Item(0).getPortions().add(portion);
ITextFrameFormat textFrameFormat = autoShape.getTextFrame().getTextFrameFormat();
textFrameFormat.setAutofitType(TextAutofitType.Normal);
pres.save("Output-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Info
Lorsque l’option Shrink text on overflow est utilisée, le paramètre est appliqué uniquement lorsque le texte devient trop long pour sa zone.Wrap Text
Si vous voulez que le texte d’une forme soit renvoyé à l’intérieur de cette forme lorsque le texte dépasse la bordure de la forme (largeur uniquement), vous devez utiliser le paramètre Wrap text in shape. Pour spécifier ce paramètre, vous devez définir la propriété WrapText (de la classe TextFrameFormat) sur true.
Ce code Java montre comment utiliser le paramètre Wrap Text dans une présentation PowerPoint :
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 30, 30, 350, 100);
Portion portion = new Portion("lorem ipsum...");
portion.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
portion.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
autoShape.getTextFrame().getParagraphs().get_Item(0).getPortions().add(portion);
ITextFrameFormat textFrameFormat = autoShape.getTextFrame().getTextFrameFormat();
textFrameFormat.setWrapText(NullableBool.True);
pres.save("Output-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Note
Si vous définissez la propriétéWrapText sur False pour une forme, lorsque le texte à l’intérieur de la forme devient plus long que la largeur de la forme, le texte s’étend au‑delà des bordures de la forme sur une seule ligne.
FAQ
Les marges internes du cadre de texte affectent‑elles l’AutoFit ?
Oui. Le remplissage (marges internes) réduit la zone utilisable pour le texte, de sorte que l’AutoFit se déclenche plus tôt — en rétrécissant la police ou en redimensionnant la forme plus tôt. Vérifiez et ajustez les marges avant d’affiner l’AutoFit.
Comment l’AutoFit interagit‑il avec les sauts de ligne manuels et souples ?
Les sauts forcés restent en place, et l’AutoFit ajuste la taille de police et l’espacement autour d’eux. Supprimer les sauts inutiles réduit souvent l’agressivité avec laquelle l’AutoFit doit réduire le texte.
Le changement de la police du thème ou le déclenchement d’une substitution de police affecte‑t‑il les résultats de l’AutoFit ?
Oui. Substituer une police avec des métriques de glyphes différentes modifie la largeur/hauteur du texte, ce qui peut modifier la taille finale de la police et le renvoi à la ligne. Après tout changement ou substitution de police, revérifiez les diapositives.