.NET에서 참고문헌을 사용하는 방법
이 가이드는 Word의 참고문헌 기능 뒤에 있는 인용 원본 데이터를 구축하는 방법을 보여줍니다. Aspose.Words FOSS for .NET, 사용하여 Source, Contributor, Person, 그리고 Corporate 클래스는 Aspose.Words.Bibliography 네임스페이스. 이 문서에서는 소스 레코드 생성, 올바른 소스 유형 선택, 개인 및 기업 기여자 할당, 그리고 소스를 추가하여 so CITATION and BIBLIOGRAPHY 필드가 이를 해결할 수 있습니다.
단계별 가이드
1단계: 패키지 설치
Aspose.Words FOSS for .NET은 아직 NuGet 패키지를 배포하지 않으므로 대신 소스에서 라이브러리를 빌드하십시오. https://github.com/aspose-words-foss/Aspose.Words-FOSS-for-.NET.git을(를) 복제한 다음 .NET SDK와 함께 Release 구성으로 Aspose.Words.sln을 빌드하고, 결과물인 Aspose.Words 어셈블리를 프로젝트에 참조하십시오. 이 라이브러리는 .NET Standard 2.0을 대상으로 하므로 .NET Framework 4.6.2+ 및 .NET 6/8/10에서 실행됩니다.
2단계: 필요한 클래스 가져오기
Document에 대한 using Aspose.Words; 지시문을 추가하고, Source, SourceType, Contributor, ContributorCollection, Person, PersonCollection, 및 Corporate에 대한 using Aspose.Words.Bibliography; 지시문을 추가하십시오.
Step 3: 문서의 참고문헌 데이터에 접근
Document.Bibliography은(는) Bibliography 인스턴스를 반환합니다. 해당 Sources 속성은 문서에서 사용할 수 있는 모든 소스 레코드를 보유하는 IList<Source>이며, BibliographyStyle는 인용 스타일 이름을 기록합니다 – 예를 들어 APA 또는 MLA – BIBLIOGRAPHY 필드가 업데이트될 때 적용되어야 합니다.
Step 4: 소스 레코드 생성
다음과 함께 Source을(를) 구성합니다: Source(tag, sourceType). Tag는 나중에 FieldCitation.SourceTag와 FieldBibliography.SourceTag가 일치시키는 짧은 식별자이며, SourceType는 소스 종류를 식별하는 열거값입니다 – Book, BookSection, JournalArticle, ArticleInAPeriodical, ConferenceProceedings, Report, Patent, Case, InternetSite, DocumentFromInternetSite, Interview, Film, SoundRecording, Performance, Art, Electronic 또는 Misc. 모든 Source에 고유한 Tag를 부여하십시오 – 이는 인용 필드가 올바른 레코드를 찾는 데 사용하는 유일한 값입니다.
Step 5: 선택한 소스 유형에 대한 필드 채우기
Title와 ShortTitle을(를) 넘어, Source는 수십 개의 카테고리별 필드를 노출합니다 – 선택한 SourceType와 관련된 필드만 채우세요. 책 소스는 BookTitle, Edition, NumberVolumes, Volume, Pages, ChapterNumber를 사용합니다. 정기간행물 소스는 JournalName, PeriodicalTitle, PublicationTitle, Issue를 사용합니다. 웹 소스는 InternetSiteTitle, Url, DayAccessed, MonthAccessed, YearAccessed를 사용합니다. 법률 소스는 CaseNumber, AbbreviatedCaseNumber, Court, Reporter를 사용합니다. 녹음 및 방송 소스는 AlbumTitle, Broadcaster, BroadcastTitle, RecordingNumber, Medium, ProductionCompany, Distributor, Station, Theater를 사용합니다. 일반 목적 필드는 대부분의 소스 유형에 적용됩니다: Publisher, City, StateOrProvince, CountryOrRegion, Year, Month, Day, Comments, Guid, Doi, Version, RefOrder, Lcid.
Step 6: 개별 기여자 지정
Source.Contributors은(는) 기여자 역할당 하나의 속성을 가진 ContributorCollection을 반환합니다 – Author, Editor, Translator, Compiler, Composer, Conductor, Counsel, Director, Interviewee, Interviewer, Inventor, Performer, Producer, Writer, Artist, BookAuthor – 각각은 추상 Contributor 기본 클래스 타입입니다. 단일 명명된 개인에 대해 역할 속성에 Person( Last, First, Middle 로 구성됨)를 할당하십시오.
단계 7: 다중 또는 기업 기여자 할당
역할에 한 명 이상의 개인 기여자가 있는 경우, 단일 Person 대신 PersonCollection을 할당합니다 – PersonCollection는 Contributor에서 파생되고 IEnumerable<Person>를 구현하며, Add(), Remove(), RemoveAt(), Clear(), Contains(), Count을 사용해 구성원을 관리합니다. 기여자가 사람 대신 조직인 경우, 역할 속성에 대신 Corporate(그 Name에서 구성됨)을 할당합니다. Person, PersonCollection, Corporate는 모두 동일한 Contributor형 역할 속성을 만족하므로, 소스에 맞는 것을 선택하십시오.
단계 8: 인용 필드가 해결할 수 있도록 소스를 추가합니다
완료된 모든 항목을 추가하십시오. Source to Document.Bibliography.Sources 업데이트하기 전에는 CITATION or BIBLIOGRAPHY 그것을 참조하는 필드 — 생성되었지만 추가되지 않은 출처는 참조 필드가 해결할 대상이 없습니다. Source 레코드는 데이터만 제공하며; 인용이나 참고문헌 텍스트를 직접 렌더링하지 않습니다. 렌더링은 다음을 통해 이루어집니다. FieldCitation and FieldBibliography, 다음에서 다룹니다 링크 및 참고 가이드.
일반적인 문제 및 해결 방법
CITATION 또는 BIBLIOGRAPHY 필드는 해결되지 않습니다 그 Source.Tag 필드와 정확히 일치하지 않습니다 SourceTag. 태그가 일치하는지 확인하고, 그리고 Source 실제로 추가되었습니다 Document.Bibliography.Sources.
역할에 잘못된 기여자 유형이 할당되었습니다 A Person 여러 기여자가 존재하는 경우에 할당되었거나 그 반대입니다. 사용 PersonCollection 하나의 역할에 여러 개인을 위해, Person 단일 개인을 위해, 그리고 Corporate 조직을 위해.
소스 필드가 해당 유형에 대해 일관되지 않아 보입니다. 다른 대상에 대한 필드 SourceType 채워졌습니다 – 예를 들어, 웹 필드와 같은 Url and DayAccessed 에 설정된 Book 소스. 선택된 항목에 관련된 필드만 채우세요 SourceType.
여러 저자가 있는 소스는 하나의 이름만 표시됩니다. 하나의 Person 에 할당되었습니다 Author a 대신에 PersonCollection. 만들기 PersonCollection, 각각 추가 Person with Add(), 그리고 컬렉션을 role 속성에 할당합니다.
BibliographyStyle 은 내가 기대하는 인용 형식과 일치하지 않습니다 Bibliography.BibliographyStyle 적용할 인용 스타일 이름을 기록합니다 – 문서의 FieldCitation 필드가 출력 형식을 기대합니다.
자주 묻는 질문
단일 저자와 함께 책 소스를 추가하려면 어떻게 해야 하나요?
SourceType.Book이(가) 포함된 Source을(를) 만들고, BookTitle, Publisher, Year 및 관련 필드를 설정한 뒤, Person를 Source.Contributors.Author에 할당하세요.
여러 저자가 있는 출처를 어떻게 추가하나요?
PersonCollection을(를) 할당하세요 — Add()를 통해 Person 인스턴스로 채워진 — 관련 ContributorCollection 역할 속성에, 예를 들어 Author와 같이.
조직을 개인 대신 인용하려면 어떻게 해야 하나요?
조직의 Name으로 구성된 Corporate 인스턴스를 Person 또는 PersonCollection 대신 ContributorCollection 역할 속성에 할당하십시오.
Source 레코드는 렌더링된 문서에서 실제로 어디에 표시됩니까?
그들은 스스로 렌더링되지 않습니다 – FieldCitation and FieldBibliography 필드는 해당 필드에서 만든 콘텐츠를 렌더링하고, 일치하는 SourceTag. 확인하십시오 링크 및 참고 가이드.
Source 레코드를 인용하는 필드가 이를 식별하도록 하는 요소는 무엇입니까?
Source.Tag는 Source(tag, sourceType) 생성자에서 설정됩니다 – FieldCitation.SourceTag와 FieldBibliography.SourceTag가 이 정확한 값과 일치합니다.