구조 요소를 요소에 추가
소개
오늘날의 디지털 세계에서 접근성은 핵심입니다. 모든 사람이 정보에 동등하게 접근할 수 있어야 하며, 모든 개인이 쉽게 탐색할 수 있는 형식으로 제공하는 것이 중요합니다. 이 튜토리얼에서는 Aspose.PDF for .NET을 사용하여 구조 요소를 추가하여 PDF 접근성을 향상시키는 방법을 알아봅니다. 이 강력한 라이브러리를 사용하면 개발자가 PDF 문서로 원활하게 작업하여 접근성 표준을 준수하는 태그가 지정된 PDF를 만들 수 있습니다.
필수 조건
PDF 구조 요소의 세계로의 여행을 시작하기 전에 필요한 모든 것이 있는지 확인해 보겠습니다.
- 비주얼 스튜디오: C# 코드를 작성하고 실행할 IDE입니다. 여기에서 다운로드할 수 있습니다.Visual Studio 아직 하지 않았다면.
- Aspose.PDF for .NET 라이브러리: PDF를 조작하려면 라이브러리가 필요합니다. 최신 버전을 다음에서 다운로드하세요.Aspose 웹사이트이 라이브러리는 우리 프로젝트에 매우 중요합니다.
- C#에 대한 기본 지식: C# 구문과 객체 지향 프로그래밍에 대한 지식이 유익할 것입니다. 몇 줄의 C#을 기꺼이 쓸 수 있다면, 당신은 갈 준비가 되었습니다!
- PDF 문서 디렉토리: 이 튜토리얼의 입력 및 출력 PDF 파일을 보관할 디렉토리를 시스템에 만듭니다.
이제 도구와 지식이 준비되었으니, 시작하는 데 필요한 패키지를 가져와 보겠습니다!
패키지 가져오기
우선, 필요한 네임스페이스를 임포트해 보겠습니다. C# 파일 맨 위에 다음이 있는지 확인하세요.
using Aspose.Pdf.LogicalStructure;
using Aspose.Pdf.Tagged;
using System;
이러한 네임스페이스는 PDF 문서 작업과 태그가 지정된 콘텐츠를 만드는 데 필요한 클래스와 메서드에 대한 액세스를 제공합니다. 이제 문제의 핵심으로 들어가서 코딩을 시작해 보겠습니다!
1단계: 문서 디렉토리 설정
코딩을 시작하기 전에 파일을 저장할 위치를 설정해야 합니다. 이는 스크립트가 원활하게 실행되기 위해 매우 중요합니다.
// 문서 디렉토리의 경로를 정의합니다.
string dataDir = "YOUR DOCUMENT DIRECTORY";
바꾸다"YOUR DOCUMENT DIRECTORY"
PDF 파일을 보관하려는 실제 경로와 함께. 이는 다음과 같을 수 있습니다.C:\\PDFs\\
.
2단계: 새 PDF 문서 만들기
이제 디렉토리가 설정되었으니 구조 요소를 추가할 PDF 문서를 만들어 보겠습니다.
Document document = new Document();
이 줄은 새 인스턴스를 초기화합니다.Document
클래스를 통해 PDF 콘텐츠 작업을 시작할 수 있습니다.
3단계: 태그가 지정된 콘텐츠에 액세스하고 설정
문서가 준비되면 접근성을 위해 필수적인 태그가 지정된 콘텐츠를 설정할 차례입니다.
태그가 지정된 콘텐츠 초기화
ITaggedContent taggedContent = document.TaggedContent;
이 줄은 PDF의 태그가 지정된 콘텐츠에 대한 액세스를 제공합니다. 태그가 지정된 콘텐츠는 화면 판독기가 문서를 정확하게 해석하는 데 필요합니다.
문서 메타데이터 설정
문서에 적절한 제목을 붙이고 언어를 정의하는 것이 좋습니다.
taggedContent.SetTitle("Text Elements Example");
taggedContent.SetLanguage("en-US");
이를 통해 문서의 메타데이터가 향상되고 접근성이 향상됩니다.
4단계: 구조 요소 만들기 및 추가
구조를 추가해 봅시다! 여기에는 적절하게 포맷되고 태그가 지정된 문서를 만들기 위해 문단과 span 요소를 만드는 것이 포함됩니다.
루트 구조 요소 생성
StructureElement rootElement = taggedContent.RootElement;
이제 첫 번째 문단과 span 요소 세트를 만들어 보겠습니다.
첫 번째 문단 요소 만들기
ParagraphElement p1 = taggedContent.CreateParagraphElement();
rootElement.AppendChild(p1);
여기서 우리는 새로운 문단 요소를 초기화하고 루트 구조 요소에 추가합니다. 이것이 콘텐츠의 시작점입니다!
문단에 Span 요소 추가
SpanElement span11 = taggedContent.CreateSpanElement();
span11.SetText("Span_11");
SpanElement span12 = taggedContent.CreateSpanElement();
span12.SetText(" and Span_12.");
그만큼span
요소는 더 큰 문단 내의 미니 문단과 같습니다. 이를 통해 텍스트 서식을 더 세밀하게 제어할 수 있습니다.
모두 합치세요
이제 모든 요소를 합쳐서 전체 문단을 구성해 보겠습니다.
p1.SetText("Paragraph with ");
p1.AppendChild(span11);
p1.AppendChild(span12);
추가 문단에 대해 반복
추가 문단에 대해서도 이 과정을 반복합니다.
ParagraphElement p2 = taggedContent.CreateParagraphElement();
rootElement.AppendChild(p2);
SpanElement span21 = taggedContent.CreateSpanElement();
span21.SetText("Span_21");
SpanElement span22 = taggedContent.CreateSpanElement();
span22.SetText("Span_22.");
p2.AppendChild(span21);
p2.SetText(" and ");
p2.AppendChild(span22);
계속해서 창조하세요ParagraphElement
s와SpanElement
s, 이를 다음에 추가합니다.rootElement
위에 표시된 것과 같은 방식으로p1
.
5단계: 문서 저장
모든 구조 요소가 준비되면 이제 PDF 문서를 저장할 차례입니다.
출력 파일 경로 지정
string outFile = dataDir + "AddStructureElementIntoElement_Output.pdf";
문서 저장
document.Save(outFile);
마법이 일어나는 곳입니다! 문서가 지정된 출력 파일 경로에 저장됩니다.
6단계: PDF/UA 준수 확인
마지막 단계는 문서가 PDF/UA 접근성 표준을 준수하는지 확인하는 것입니다.
준수 여부를 확인하려면 다음 코드를 사용하세요.
document = new Document(outFile);
string logFile = dataDir + "46144_log.xml";
bool isPdfUaCompliance = document.Validate(logFile, PdfFormat.PDF_UA_1);
Console.WriteLine(String.Format("PDF/UA compliance: {0}", isPdfUaCompliance));
이는 접근성에 필수적인 PDF/UA 표준을 문서가 준수하는지 여부를 출력합니다.
결론
이제 다 봤습니다! 방금 Aspose.PDF for .NET을 사용하여 PDF 문서에 구조 요소를 추가하는 방법을 배웠습니다. 이러한 단계를 따르면 모든 PDF를 표준을 준수하는 액세스 가능한 형식으로 변환하여 모든 사람이 정보에 동등하게 액세스할 수 있도록 할 수 있습니다.
자주 묻는 질문
.NET용 Aspose.PDF란 무엇인가요?
.NET용 Aspose.PDF는 개발자가 프로그래밍 방식으로 PDF 문서를 만들고, 조작하고, 변환할 수 있는 라이브러리입니다.
내 PDF에 접근할 수 있는지 어떻게 확인하나요?
Aspose.PDF 라이브러리를 사용하여 PDF/UA 표준에 대해 PDF의 유효성을 검사하여 접근성 지침을 충족하는지 확인할 수 있습니다.
Aspose.PDF를 무료로 사용할 수 있나요?
네, Aspose는 무료 체험판을 제공하여 아무런 비용 없이 기능을 탐색할 수 있습니다. 다운로드할 수 있습니다.여기.
Aspose.PDF에 대한 문서는 어디에서 찾을 수 있나요?
Aspose.PDF에 대한 포괄적인 문서를 찾을 수 있습니다.여기.
Aspose.PDF 라이선스는 어떻게 구매하나요?
Aspose 웹사이트에서 직접 라이센스를 구매할 수 있습니다.여기.