Améliorer l’accessibilité dans des rapports paginés avec StructureTypeOverwrite (Power BI Report Builder)

S’APPLIQUE À : Power BI Report Builder Power BI Desktop

La propriété StructureTypeOverwrite a été ajoutée au modèle .rdl. Vous pouvez l’utiliser pour améliorer l’accessibilité dans des rapports paginés dans Microsoft Report Builder et Power BI Report Builder. La Visionneuse de rapports respecte également la propriété dans Power BI Report Server.

Vous pouvez utiliser cette nouvelle propriété de deux façons différentes :

  • Pour définir les niveaux de titre H1 à H6 pour des zones de texte.
  • Pour spécifier des cellules de tableau en tant qu’en-têtes de tableau.

Voyons un exemple montrant leur utilité.

Voici la conception d’un rapport simple. Il a un titre de rapport et deux tableaux avec des données. Chaque tableau a une étiquette de zone de texte.

Screenshot of a simple report with a report title and two tables with data.

Si nous exportons ce rapport au format PDF accessible sans modifier quoi que ce soit, nous obtenons cette structure logique :

Screenshot showing logical structure before.

Comme vous pouvez le voir, la première ligne () du tableau n’est pas marquée avec une balise d’en-tête, telle qu’elle doit être.

Les paragraphes (zones de texte) sont présentés en tant que <P>.

L’aperçu du lecteur d’écran indique que le rapport n’a aucune structure :

Screenshot showing screen reader with no structure.

Une fois la nouvelle propriété définie, vous pouvez transformer la structure PDF en structure logique suivante :

Screenshot showing added logical structure.

Vous voyez maintenant que vous disposez d’un Titre 1 (H1) pour le titre du rapport, et deux Titres 2 (H2) pour les titres du tableau.

La première ligne du tableau est correctement définie avec une balise qui permet au document PDF de déterminer quelles cellules sont des en-têtes et quelles cellules de données doivent y être associées.

Voici le nouvel aperçu du lecteur d’écran :

Screenshot showing Screen reader with structure.

Niveau de titre pour des zones de texte

Dans Report Builder, vous pouvez définir le niveau de titre de n’importe quelle zone de texte, notamment les zones de texte placées à l’intérieur d’un tableau matriciel. Les tableaux et les matrices sont des exemples de tableaux matriciels.

La valeur par défaut est Aucune. Voici les valeurs disponibles :

  • Aucun
  • Titre1
  • Titre2
  • Titre3
  • Titre4
  • Titre5
  • Titre6

Définir la valeur du titre

Vous pouvez définir la valeur du titre de deux façons différentes :

Fenêtre Propriétés de la zone de texte

  1. Cliquez avec le bouton droit sur une zone de texte, puis sélectionnez Propriétés de la zone de texte.

  2. Sous l’onglet Accessibilité, dans la zone Remplacer le type de structure, sélectionnez un niveau de titre.

    Screenshot showing Overwrite structure type box.

Grille des propriétés de la zone de texte

  1. Si la grille des propriétés n’est pas ouverte, sous l’onglet Affichage, activez la case à cocher Propriétés.

  2. Sélectionnez une zone de texte.

  3. Dans la grille des propriétés, dans le groupe de propriétés Accessibilité, sélectionnez une valeur dans la propriété StructureTypeOverwrite.

    Screenshot showing Structure type overwrite property setting.

Avantages des titres

  • Les lecteurs d’écran annoncent les titres comme « Niveau de titre 1 », « Niveau de titre 2 », et ainsi de suite.
  • Vous pouvez appuyer sur la touche H de raccourci pour accéder à l’en-tête suivant dans un rapport, lorsque vous affichez des rapports dans Power BI Report Server.
  • Les en-têtes sont marqués correctement dans le fichier PDF balisé.

Définir des cellules d’en-tête pour des tableaux dans Report Builder

Vous pouvez définir une valeur pour n’importe quelle cellule d’un tableau et pour des cellules régulières dans des matrices, autrement dit, n’importe quelle cellule qui n’est pas dans la ligne supérieure ou dans la colonne gauche.

La valeur par défaut est Aucune. Voici les valeurs disponibles :

  • Aucun
  • ColumnHeaderCell
  • RowHeaderCell
  • DataCell

Définir une valeur pour une seule cellule

  1. Sélectionnez une cellule dans un tableau matriciel. Elle doit être indiquée dans une ligne en gras.

  2. Cliquez avec le bouton droit, puis sélectionnez Propriétés de cellule.

    Screenshot showing tablix cell properties.

  3. Sous l’onglet Accessibilité, vous pouvez définir la propriété dans la zone de Remplacer le type de structure.

    Screenshot showing cell overwrite structure type.

  4. Sélectionnez l’une des valeurs de cellule structurelle disponibles :

    • Aucun
    • ColumnHeaderCell
    • RowHeaderCell
    • DataCell

Définir une valeur pour une ligne entière

  1. Sélectionnez à l’intérieur d’un tableau.

  2. Sélectionnez le rectangle gris à côté de la ligne pour laquelle vous souhaitez définir une propriété, puis sélectionnez Propriétés de ligne.

    Screenshot showing selecting row properties.

  3. Dans la boîte de dialogue Propriétés de ligne sous l’onglet Accessibilité, définissez la nouvelle propriété.

    Screenshot showing setting row properties on the Accessibility tab.

Avantages de la définition des valeurs de cellule

  • Les lecteurs d’écran annoncent les en-têtes de tableau comme « En-tête ».
  • Certains lecteurs d’écran (par exemple, NVDA) peuvent annoncer des titres d’en-tête associés lors de la lecture des valeurs de cellule de données, ce qui est important pour les utilisateurs qui on recours à des lecteurs d’écran.
  • Les en-têtes de tableau sont marqués correctement dans le fichier PDF balisé et associés aux cellules de données.

Considérations et limitations

  • Vous ne pouvez pas définir cette propriété pour des cellules dans la grille de propriétés. Lorsque vous sélectionnez une cellule de tableau, les propriétés de la grille sont liées à la zone de texte, et non à la cellule. Lorsque vous sélectionnez une cellule de tableau, dans la grille des propriétés, les options Titre1 à Titre6 s’affichent. Elles sont associées à la zone de texte de cette cellule, et non à la cellule elle-même.
  • Vous ne pouvez pas définir cette propriété pour la ligne supérieure ou la colonne gauche d’une matrice. Les en-têtes de colonne supérieure et gauche sont définis automatiquement pour une matrice.
  • Vous pouvez définir une cellule d’en-tête de colonne et une cellule d’en-tête de ligne.
  • La définition d’un en-tête de ligne (en-tête horizontal) d’une table avec une disposition de droite à gauche n’associe pas les cellules de données à gauche de celle-ci à l’en-tête dans un fichier PDF balisé exporté.