Framesets

Framesets

Ce guide montre comment lire la structure de pages à cadres héritée dans Aspose.Words FOSS pour .NET en utilisant les classes Frameset et FramesetCollection, qui représentent une page à cadres et ses cadres enfants lorsqu’une structure de document modélise un ensemble de cadres.


La classe Frameset

Frameset représente une page à cadres ou un cadre unique sur une page à cadres. Document.Frameset renvoie la racine Frameset pour un document qui a été chargé à partir d’une structure HTML à cadres. FrameDefaultUrl (string) est l’URL de la page Web ou le nom de fichier du document affiché dans ce cadre. IsFrameLinkToFile (bool) indique si la valeur FrameDefaultUrl est une ressource externe vers laquelle le cadre pointe. ChildFramesets renvoie un FramesetCollection des cadres enfants et des pages à cadres imbriquées sous celui-ci.


Itération des cadres enfants avec FramesetCollection

FramesetCollection implémente IEnumerable<Frameset>, donc GetEnumerator() prend en charge l’itération foreach sur les cadres qu’il contient. Count indique le nombre de cadres ou de pages à cadres dans la collection. Combinez Count et l’itération avec ChildFramesets pour parcourir récursivement une structure de pages à cadres imbriquée — chaque Frameset enfant peut lui-même contenir d’autres ChildFramesets.


Conseils et meilleures pratiques

  • Vérifiez Document.Frameset pour null avant de lire ses propriétés — la plupart des documents ne sont pas des pages de cadres, donc cette propriété n’est remplie que lorsque la source HTML a utilisé une mise en page de cadres.
  • Parcourez ChildFramesets de manière récursive (plutôt que de supposer une structure plate à un seul niveau) car une page de cadres peut imbriquer d’autres pages de cadres à l’intérieur de ses cadres.
  • Utilisez IsFrameLinkToFile pour distinguer un cadre qui pointe vers une ressource externe d’un cadre qui intègre directement le nom de fichier d’un document dans FrameDefaultUrl.
  • FramesetCollection.Count est une méthode simple pour vérifier si un Frameset possède des enfants avant d’itérer.

Problèmes courants

ProblèmeCauseCorrection
Document.Frameset est nullLe document n’a pas été chargé à partir d’une source HTML basée sur des cadresConfirmez que le document source a réellement utilisé des cadres HTML avant de vous fier à cette propriété
Itérer ChildFramesets ne prend pas en compte les cadres imbriquésSeul le niveau supérieur a été itéréRécursivement parcourir chaque enfant Frameset.ChildFramesets plutôt que d’itérer à un niveau de profondeur
Impossible de déterminer si un cadre pointe vers un fichier ou une URLIsFrameLinkToFile n’a pas été vérifiéLire IsFrameLinkToFile conjointement avec FrameDefaultUrl pour savoir comment résoudre la cible

FAQ

Qu’est-ce qu’un Frameset dans Aspose.Words FOSS pour .NET?

Il représente une page de cadres ou un seul cadre sur une page de cadres, exposé en tant que Document.Frameset pour les documents chargés depuis une source HTML basée sur des cadres.

Comment lister toutes les frames d’un frameset?

Itérer Frameset.ChildFramesets (un FramesetCollection) avec GetEnumerator() / foreach, en récursant dans tout enfant qui possède lui-même d’autres ChildFramesets.

Comment savoir combien de frames enfants possède un Frameset?

Lire FramesetCollection.Count sur sa propriété ChildFramesets.

Que vous indique IsFrameLinkToFile?

Si la page web ou le nom de fichier du document dans FrameDefaultUrl est une ressource externe à laquelle la frame est liée.


API Reference Résumé

Classe/MéthodeDescription
Document.FramesetRacine Frameset pour un document chargé à partir d’une source HTML basée sur des cadres
FramesetReprésente une page de cadres ou un seul cadre sur une page de cadres
Frameset.FrameDefaultUrlURL de la page Web ou nom de fichier du document affiché dans le cadre
Frameset.IsFrameLinkToFileIndique si FrameDefaultUrl est une ressource liée externe
Frameset.ChildFramesetsFramesetCollection des cadres enfants et des pages de cadres
FramesetCollectionCollection d’instances de Frameset ; Count, GetEnumerator

Voir aussi

 Français