Arbeta med bibliografi
Arbeta med bibliografi
Word-funktionen för citerings- och bibliografifunktionen lagrar sina källdata separat från fälten som renderar dem. Aspose.Words FOSS för .NET modeller som hämtar data genom Aspose.Words.Bibliography namnrymd – Source, Contributor, Person, och Corporate – nåbar från Document.Bibliography. Den här sidan täcker att bygga och läsa den datan; de CITATION and BIBLIOGRAPHY fält som renderar den täcks i den guide för länkar och referenser.
Bibliografidatamodellen
Document.Bibliography är en Bibliography-instans med BibliographyStyle – citeringsstilsnamnet (t.ex. APA eller MLA) som ska tillämpas när ett BIBLIOGRAPHY-fält uppdateras – och Sources, en IList<Source> som innehåller varje källpost som är tillgänglig för dokumentet.
Källposter
Source konstrueras med Source(tag, sourceType), där Tag är den korta identifieraren som FieldCitation.SourceTag och FieldBibliography.SourceTag matchar mot, och SourceType är en uppräkning som identifierar källtypen – värden inkluderar Book, BookSection, JournalArticle, ArticleInAPeriodical, ConferenceProceedings, Report, Patent, Case, InternetSite, DocumentFromInternetSite, Interview, Film, SoundRecording, Performance, Art, Electronic och Misc. Source.Type innehåller separat källtypen som en vanlig sträng. Utöver Title och ShortTitle exponerar Source dussintals kategori-specifika fält efter behov för den valda SourceType – bokfält (BookTitle, Edition, NumberVolumes, Volume, Pages, ChapterNumber), tidskriftsfält (JournalName, PeriodicalTitle, PublicationTitle, Issue), webbfält (InternetSiteTitle, Url, DayAccessed, MonthAccessed, YearAccessed), juridiska fält (CaseNumber, AbbreviatedCaseNumber, Court, Reporter), inspelnings- och sändningsfält (AlbumTitle, Broadcaster, BroadcastTitle, RecordingNumber, Medium, ProductionCompany, Distributor, Station, Theater), PatentNumber, StandardNumber, avhandlingsfält (ThesisType, Institution, Department), och generella fält (Publisher, City, StateOrProvince, CountryOrRegion, Year, Month, Day, Comments, Guid, Doi, Version, RefOrder, Lcid).
Contributors
Source.Contributors är en ContributorCollection med en egenskap per bidragsgivarroll – Author, Editor, Translator, Compiler, Composer, Conductor, Counsel, Director, Interviewee, Interviewer, Inventor, Performer, Producer, Writer, Artist och BookAuthor – varje typad som Contributor, den gemensamma basen för de två typerna av bidragsgivare som beskrivs nedan.
Individuella vs. Företagsbidragsgivare
Contributor implementeras av två klasser: Person (First, Middle, Last) för en enskild individ, och Corporate (Name) för en organisation. PersonCollection är också en underklass till Contributor och implementerar IEnumerable<Person> (Add, Remove, RemoveAt, Clear, Contains, Count), så en bidragsgivarroll som har flera individuella författare kan tilldelas en PersonCollection lika lätt som en roll med en enskild författare tilldelas en Person – båda, tillsammans med Corporate, uppfyller samma Contributor-typade roll-egenskap.
Rendera bibliografiskt innehåll
Source poster levererar endast data – de renderar inte själva citat- eller bibliografitext. Det sker via FieldCitation and FieldBibliography, som söker upp en Source genom att matcha SourceTag against Source.Tag. Se guide för länkar och referenser för de fältklasserna.
Tips och bästa praxis
- Ge varje
Sourceett uniktTag– det är det enda värde somFieldCitation.SourceTagochFieldBibliography.SourceTaganvänder för att hitta rätt post. - Fyll bara i de
Sourcefälten som är relevanta för dessSourceType– enBook-källa har ingen nytta avBroadcasterellerCaseNumber, till exempel, men klassen verkställ inte detta åt dig. - Använd
Personför en enskild namngiven medarbetare,PersonCollectionför flera individer i samma roll, ochCorporatenär medarbetaren är en organisation snarare än en person – tilldela den som passar till den matchandeContributorCollectionroll-egenskapen. Bibliography.BibliographyStyleregistrerar vilket namn på citeringsstil som ska tillämpas; håll det konsekvent med hur dinaFieldCitationfält förväntar sig att deras output formateras.- Lägg till varje
SourceiDocument.Bibliography.Sourcesinnan du uppdaterarCITATIONellerBIBLIOGRAPHYfält som refererar till den – en saknad källa betyder att referensfältet inte har något att lösa upp till.
Vanliga problem
| Problem | Orsak | Åtgärd |
|---|---|---|
CITATION eller BIBLIOGRAPHY fältet kan inte lösas | Den Source.Tag matchar inte exakt fältets SourceTag | Bekräfta att taggarna matchar, och att Source har lagts till Document.Bibliography.Sources |
| Fel bidragsgivartyp har tilldelats en roll | En Person tilldelades där flera bidragsgivare finns, eller tvärtom | Använd PersonCollection för flera individer i en roll, Person för en enskild individ, Corporate för en organisation |
| Källfälten ser inkonsekventa ut för sin typ | Fält för en annan SourceType fylldes i (till exempel webbfält på en Book källa) | Fyll endast i de fält som är relevanta för den valda SourceType |
FAQ
Hur lägger jag till en bokkälla med en enda författare?
Skapa en Source med SourceType.Book, ange BookTitle, Publisher, Year och relaterade fält, och tilldela sedan en Person till Source.Contributors.Author.
Hur lägger jag till en källa med flera författare?
Tilldela en PersonCollection (populerad med Person instanser via Add()) till den relevanta ContributorCollection roll-egenskapen, såsom Author.
Hur citerar jag en organisation istället för en individ?
Tilldela en Corporate instans (konstruerad med organisationens Name) till ContributorCollection roll-egenskapen istället för en Person eller PersonCollection.
Var visas Source-poster faktiskt i det renderade dokumentet?
De renderar inte själva – FieldCitation and FieldBibliography fält renderar innehåll byggt från dem, matchade av SourceTag. Se länkar och referensguide.
API Reference Sammanfattning
| Klass / Enum | Beskrivning |
|---|---|
Bibliography | Bibliografidatarot, via Document.Bibliography; BibliographyStyle, Sources |
Source | En enskild citeringskälla; dussintals kategorispecifika fält plus Contributors |
SourceType | Enum av källtyper: Book, JournalArticle, InternetSite, Patent, Case, och mer |
ContributorCollection | Per-roll bidragsgivareegenskaper (Author, Editor, Translator, och andra) på en Source |
Contributor | Gemensam bas för Person, PersonCollection och Corporate |
Person / PersonCollection | En enskild individuell bidragsgivare, eller en samling av dem |
Corporate | En organisation som agerar som bidragsgivare |