Framesets
Framesets
Acest ghid arată cum să se citească structura legacy a paginilor cu cadre în Aspose.Words FOSS pentru .NET utilizând clasele Frameset și FramesetCollection, care reprezintă o pagină cu cadre și cadrele sale copil atunci când structura unui document modelează un set de cadre.
Clasa Frameset
Frameset reprezintă o pagină cu cadre sau un singur cadru pe o pagină cu cadre. Document.Frameset returnează Frameset rădăcină pentru un document care a fost încărcat dintr-o structură HTML încadrată. FrameDefaultUrl (string) este URL-ul paginii web sau numele fișierului documentului afișat în acel cadru. IsFrameLinkToFile (bool) indică dacă valoarea FrameDefaultUrl este o resursă externă la care se leagă cadrul. ChildFramesets returnează un FramesetCollection al cadrelor copil și al paginilor cu cadre imbricate sub acesta.
Iterarea cadrelor copil cu FramesetCollection
FramesetCollection implementează IEnumerable<Frameset>, astfel că GetEnumerator() suportă iterarea foreach peste cadrele pe care le conține. Count raportează numărul de cadre sau pagini cu cadre din colecție. Combinați Count și iterarea cu ChildFramesets pentru a parcurge recursiv o structură de pagini cu cadre imbricată — fiecare Frameset copil poate să conțină în continuare ChildFramesets.
Sfaturi și bune practici
- Verificați
Document.Framesetpentrunullînainte de a-i citi proprietățile — majoritatea documentelor nu sunt pagini cu cadre, așa că această proprietate este completată numai când sursa HTML a folosit un aspect cu cadre. - Parcurgeți
ChildFramesetsrecursiv (în loc să presupuneți o structură plată, cu un singur nivel) deoarece o pagină cu cadre poate cuibări alte pagini cu cadre în interiorul cadrului său. - Utilizați
IsFrameLinkToFilepentru a distinge un cadru care leagă la o resursă externă de cel care încorporează un nume de fișier de document direct înFrameDefaultUrl. FramesetCollection.Counteste o metodă ieftină de a verifica dacă unFramesetare copii înainte de a itera.
Probleme comune
| Problemă | Cauză | Remediere |
|---|---|---|
Document.Frameset este null | Documentul nu a fost încărcat dintr-o sursă HTML bazată pe cadre | Confirmați că documentul sursă a utilizat efectiv cadre HTML înainte de a vă baza pe această proprietate |
Iterarea ChildFramesets omite cadrele imbricate | Doar nivelul superior a fost iterat | Recursă în fiecare copil Frameset.ChildFramesets în loc să iterezi la un nivel adânc |
| Nu se poate determina dacă un cadru indică spre un fișier sau spre un URL | IsFrameLinkToFile nu a fost verificat | Citește IsFrameLinkToFile împreună cu FrameDefaultUrl pentru a ști cum să rezolvi ținta |
FAQ
Ce este un Frameset în Aspose.Words FOSS pentru .NET?
Reprezintă o pagină cu cadre sau un singur cadru pe o pagină cu cadre, expus ca Document.Frameset pentru documente încărcate dintr-o sursă HTML bazată pe cadre.
Cum pot lista toate cadrele dintr-un frameset?
Iteraţi Frameset.ChildFramesets (un FramesetCollection) cu GetEnumerator() / foreach, recursând în orice copil care are la rândul său alte ChildFramesets.
Cum pot afla câte cadre copil are un Frameset?
Citiţi FramesetCollection.Count pe proprietatea sa ChildFramesets.
Ce vă spune IsFrameLinkToFile?
Dacă pagina web sau numele fișierului document în FrameDefaultUrl este o resursă externă la care este legat cadrul.
Rezumat API Reference
| Clasă/Metodă | Descriere: |
|---|---|
Document.Frameset | Rădăcina Frameset pentru un document încărcat dintr-o sursă HTML bazată pe cadre |
Frameset | Reprezintă o pagină cu cadre sau un singur cadru pe o pagină cu cadre |
Frameset.FrameDefaultUrl | URL-ul paginii web sau numele fișierului document afișat în cadru |
Frameset.IsFrameLinkToFile | Dacă FrameDefaultUrl este o resursă legată externă |
Frameset.ChildFramesets | FramesetCollection ale cadrelor copil și paginilor de cadre |
FramesetCollection | Colecție de instanțe Frameset; Count, GetEnumerator |