구조 요소 속성 설정
태그가 있는 PDF 문서에서 구조 요소 속성을 설정하기 위해 Aspose.PDF는 CreateSectElement 및 CreateHeaderElement 메서드를 ITaggedContent 인터페이스에서 제공합니다.
다음 코드 스니펫은 태그가 있는 PDF 문서의 구조 요소 속성을 설정하는 방법을 보여줍니다:
텍스트 구조 요소 설정
태그가 있는 PDF 문서의 텍스트 구조 요소를 설정하기 위해 Aspose.PDF는 ParagraphElement 클래스를 제공합니다. 다음 코드 스니펫은 태그가 있는 PDF 문서의 텍스트 구조 요소를 설정하는 방법을 보여줍니다:
텍스트 블록 구조 요소 설정
태그가 있는 PDF 문서의 텍스트 블록 구조 요소를 설정하기 위해 Aspose.PDF는 HeaderElement 및 ParagraphElement 클래스를 제공합니다. 이러한 클래스의 객체를 StructureElement 객체의 자식으로 추가할 수 있습니다. 다음 코드 스니펫은 태그가 있는 PDF 문서의 텍스트 블록 구조 요소를 설정하는 방법을 보여줍니다:
.NET Core 3.1
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetTextBlockElements ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF Document
using ( var document = new Aspose . Pdf . Document ())
{
// Get Content for work with Tagged PDF
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document . TaggedContent ;
// Set Title and Language for Document
taggedContent . SetTitle ( "Tagged Pdf Document" );
taggedContent . SetLanguage ( "en-US" );
// Get Root Structure Element
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . HeaderElement h1 = taggedContent . CreateHeaderElement ( 1 );
Aspose . Pdf . LogicalStructure . HeaderElement h2 = taggedContent . CreateHeaderElement ( 2 );
Aspose . Pdf . LogicalStructure . HeaderElement h3 = taggedContent . CreateHeaderElement ( 3 );
Aspose . Pdf . LogicalStructure . HeaderElement h4 = taggedContent . CreateHeaderElement ( 4 );
Aspose . Pdf . LogicalStructure . HeaderElement h5 = taggedContent . CreateHeaderElement ( 5 );
Aspose . Pdf . LogicalStructure . HeaderElement h6 = taggedContent . CreateHeaderElement ( 6 );
h1 . SetText ( "H1. Header of Level 1" );
h2 . SetText ( "H2. Header of Level 2" );
h3 . SetText ( "H3. Header of Level 3" );
h4 . SetText ( "H4. Header of Level 4" );
h5 . SetText ( "H5. Header of Level 5" );
h6 . SetText ( "H6. Header of Level 6" );
rootElement . AppendChild ( h1 );
rootElement . AppendChild ( h2 );
rootElement . AppendChild ( h3 );
rootElement . AppendChild ( h4 );
rootElement . AppendChild ( h5 );
rootElement . AppendChild ( h6 );
Aspose . Pdf . LogicalStructure . ParagraphElement p = taggedContent . CreateParagraphElement ();
p . SetText ( "P. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus." );
rootElement . AppendChild ( p );
// Save Tagged PDF Document
document . Save ( dataDir + "TextBlockStructureElements_out.pdf" );
}
}
.NET 8
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetTextBlockElements ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF Document
using var document = new Aspose . Pdf . Document ();
// Get Content for work with Tagged PDF
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document . TaggedContent ;
// Set Title and Language for Document
taggedContent . SetTitle ( "Tagged Pdf Document" );
taggedContent . SetLanguage ( "en-US" );
// Get Root Structure Element
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . HeaderElement h1 = taggedContent . CreateHeaderElement ( 1 );
Aspose . Pdf . LogicalStructure . HeaderElement h2 = taggedContent . CreateHeaderElement ( 2 );
Aspose . Pdf . LogicalStructure . HeaderElement h3 = taggedContent . CreateHeaderElement ( 3 );
Aspose . Pdf . LogicalStructure . HeaderElement h4 = taggedContent . CreateHeaderElement ( 4 );
Aspose . Pdf . LogicalStructure . HeaderElement h5 = taggedContent . CreateHeaderElement ( 5 );
Aspose . Pdf . LogicalStructure . HeaderElement h6 = taggedContent . CreateHeaderElement ( 6 );
h1 . SetText ( "H1. Header of Level 1" );
h2 . SetText ( "H2. Header of Level 2" );
h3 . SetText ( "H3. Header of Level 3" );
h4 . SetText ( "H4. Header of Level 4" );
h5 . SetText ( "H5. Header of Level 5" );
h6 . SetText ( "H6. Header of Level 6" );
rootElement . AppendChild ( h1 );
rootElement . AppendChild ( h2 );
rootElement . AppendChild ( h3 );
rootElement . AppendChild ( h4 );
rootElement . AppendChild ( h5 );
rootElement . AppendChild ( h6 );
Aspose . Pdf . LogicalStructure . ParagraphElement p = taggedContent . CreateParagraphElement ();
p . SetText ( "P. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec lectus ac sem faucibus imperdiet. Sed ut erat ac magna ullamcorper hendrerit. Cras pellentesque libero semper, gravida magna sed, luctus leo. Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus." );
rootElement . AppendChild ( p );
// Save Tagged PDF Document
document . Save ( dataDir + "TextBlockStructureElements_out.pdf" );
}
인라인 구조 요소 설정
태그가 있는 PDF 문서의 인라인 구조 요소를 설정하기 위해 Aspose.PDF는 SpanElement 및 ParagraphElement 클래스를 제공합니다. 이러한 클래스의 객체를 StructureElement 객체의 자식으로 추가할 수 있습니다. 다음 코드 스니펫은 태그가 있는 PDF 문서의 인라인 구조 요소를 설정하는 방법을 보여줍니다:
.NET Core 3.1
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetInlineElements ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF Document
using ( var document = new Aspose . Pdf . Document ())
{
// Get Content for work with Tagged PDF
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document . TaggedContent ;
// Set Title and Language for Document
taggedContent . SetTitle ( "Tagged Pdf Document" );
taggedContent . SetLanguage ( "en-US" );
// Get Root Structure Element
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . HeaderElement h1 = taggedContent . CreateHeaderElement ( 1 );
Aspose . Pdf . LogicalStructure . HeaderElement h2 = taggedContent . CreateHeaderElement ( 2 );
Aspose . Pdf . LogicalStructure . HeaderElement h3 = taggedContent . CreateHeaderElement ( 3 );
Aspose . Pdf . LogicalStructure . HeaderElement h4 = taggedContent . CreateHeaderElement ( 4 );
Aspose . Pdf . LogicalStructure . HeaderElement h5 = taggedContent . CreateHeaderElement ( 5 );
Aspose . Pdf . LogicalStructure . HeaderElement h6 = taggedContent . CreateHeaderElement ( 6 );
rootElement . AppendChild ( h1 );
rootElement . AppendChild ( h2 );
rootElement . AppendChild ( h3 );
rootElement . AppendChild ( h4 );
rootElement . AppendChild ( h5 );
rootElement . AppendChild ( h6 );
Aspose . Pdf . LogicalStructure . SpanElement spanH11 = taggedContent . CreateSpanElement ();
spanH11 . SetText ( "H1. " );
h1 . AppendChild ( spanH11 );
Aspose . Pdf . LogicalStructure . SpanElement spanH12 = taggedContent . CreateSpanElement ();
spanH12 . SetText ( "Level 1 Header" );
h1 . AppendChild ( spanH12 );
Aspose . Pdf . LogicalStructure . SpanElement spanH21 = taggedContent . CreateSpanElement ();
spanH21 . SetText ( "H2. " );
h2 . AppendChild ( spanH21 );
Aspose . Pdf . LogicalStructure . SpanElement spanH22 = taggedContent . CreateSpanElement ();
spanH22 . SetText ( "Level 2 Header" );
h2 . AppendChild ( spanH22 );
Aspose . Pdf . LogicalStructure . SpanElement spanH31 = taggedContent . CreateSpanElement ();
spanH31 . SetText ( "H3. " );
h3 . AppendChild ( spanH31 );
Aspose . Pdf . LogicalStructure . SpanElement spanH32 = taggedContent . CreateSpanElement ();
spanH32 . SetText ( "Level 3 Header" );
h3 . AppendChild ( spanH32 );
Aspose . Pdf . LogicalStructure . SpanElement spanH41 = taggedContent . CreateSpanElement ();
spanH41 . SetText ( "H4. " );
h4 . AppendChild ( spanH41 );
Aspose . Pdf . LogicalStructure . SpanElement spanH42 = taggedContent . CreateSpanElement ();
spanH42 . SetText ( "Level 4 Header" );
h4 . AppendChild ( spanH42 );
Aspose . Pdf . LogicalStructure . SpanElement spanH51 = taggedContent . CreateSpanElement ();
spanH51 . SetText ( "H5. " );
h5 . AppendChild ( spanH51 );
Aspose . Pdf . LogicalStructure . SpanElement spanH52 = taggedContent . CreateSpanElement ();
spanH52 . SetText ( "Level 5 Header" );
h5 . AppendChild ( spanH52 );
Aspose . Pdf . LogicalStructure . SpanElement spanH61 = taggedContent . CreateSpanElement ();
spanH61 . SetText ( "H6. " );
h6 . AppendChild ( spanH61 );
Aspose . Pdf . LogicalStructure . SpanElement spanH62 = taggedContent . CreateSpanElement ();
spanH62 . SetText ( "Level 6 Header" );
h6 . AppendChild ( spanH62 );
Aspose . Pdf . LogicalStructure . ParagraphElement p = taggedContent . CreateParagraphElement ();
p . SetText ( "P. " );
rootElement . AppendChild ( p );
Aspose . Pdf . LogicalStructure . SpanElement span1 = taggedContent . CreateSpanElement ();
span1 . SetText ( "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " );
p . AppendChild ( span1 );
Aspose . Pdf . LogicalStructure . SpanElement span2 = taggedContent . CreateSpanElement ();
span2 . SetText ( "Aenean nec lectus ac sem faucibus imperdiet. " );
p . AppendChild ( span2 );
Aspose . Pdf . LogicalStructure . SpanElement span3 = taggedContent . CreateSpanElement ();
span3 . SetText ( "Sed ut erat ac magna ullamcorper hendrerit. " );
p . AppendChild ( span3 );
Aspose . Pdf . LogicalStructure . SpanElement span4 = taggedContent . CreateSpanElement ();
span4 . SetText ( "Cras pellentesque libero semper, gravida magna sed, luctus leo. " );
p . AppendChild ( span4 );
Aspose . Pdf . LogicalStructure . SpanElement span5 = taggedContent . CreateSpanElement ();
span5 . SetText ( "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. " );
p . AppendChild ( span5 );
Aspose . Pdf . LogicalStructure . SpanElement span6 = taggedContent . CreateSpanElement ();
span6 . SetText ( "Interdum et malesuada fames ac ante ipsum primis in faucibus. " );
p . AppendChild ( span6 );
Aspose . Pdf . LogicalStructure . SpanElement span7 = taggedContent . CreateSpanElement ();
span7 . SetText ( "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. " );
p . AppendChild ( span7 );
Aspose . Pdf . LogicalStructure . SpanElement span8 = taggedContent . CreateSpanElement ();
span8 . SetText ( "Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. " );
p . AppendChild ( span8 );
Aspose . Pdf . LogicalStructure . SpanElement span9 = taggedContent . CreateSpanElement ();
span9 . SetText ( "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. " );
p . AppendChild ( span9 );
Aspose . Pdf . LogicalStructure . SpanElement span10 = taggedContent . CreateSpanElement ();
span10 . SetText ( "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus." );
p . AppendChild ( span10 );
// Save Tagged PDF Document
document . Save ( dataDir + "InlineStructureElements_out.pdf" );
}
}
.NET 8
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetInlineElements ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF Document
using var document = new Aspose . Pdf . Document ();
// Get Content for work with Tagged PDF
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document . TaggedContent ;
// Set Title and Language for Document
taggedContent . SetTitle ( "Tagged Pdf Document" );
taggedContent . SetLanguage ( "en-US" );
// Get Root Structure Element
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . HeaderElement h1 = taggedContent . CreateHeaderElement ( 1 );
Aspose . Pdf . LogicalStructure . HeaderElement h2 = taggedContent . CreateHeaderElement ( 2 );
Aspose . Pdf . LogicalStructure . HeaderElement h3 = taggedContent . CreateHeaderElement ( 3 );
Aspose . Pdf . LogicalStructure . HeaderElement h4 = taggedContent . CreateHeaderElement ( 4 );
Aspose . Pdf . LogicalStructure . HeaderElement h5 = taggedContent . CreateHeaderElement ( 5 );
Aspose . Pdf . LogicalStructure . HeaderElement h6 = taggedContent . CreateHeaderElement ( 6 );
rootElement . AppendChild ( h1 );
rootElement . AppendChild ( h2 );
rootElement . AppendChild ( h3 );
rootElement . AppendChild ( h4 );
rootElement . AppendChild ( h5 );
rootElement . AppendChild ( h6 );
Aspose . Pdf . LogicalStructure . SpanElement spanH11 = taggedContent . CreateSpanElement ();
spanH11 . SetText ( "H1. " );
h1 . AppendChild ( spanH11 );
Aspose . Pdf . LogicalStructure . SpanElement spanH12 = taggedContent . CreateSpanElement ();
spanH12 . SetText ( "Level 1 Header" );
h1 . AppendChild ( spanH12 );
Aspose . Pdf . LogicalStructure . SpanElement spanH21 = taggedContent . CreateSpanElement ();
spanH21 . SetText ( "H2. " );
h2 . AppendChild ( spanH21 );
Aspose . Pdf . LogicalStructure . SpanElement spanH22 = taggedContent . CreateSpanElement ();
spanH22 . SetText ( "Level 2 Header" );
h2 . AppendChild ( spanH22 );
Aspose . Pdf . LogicalStructure . SpanElement spanH31 = taggedContent . CreateSpanElement ();
spanH31 . SetText ( "H3. " );
h3 . AppendChild ( spanH31 );
Aspose . Pdf . LogicalStructure . SpanElement spanH32 = taggedContent . CreateSpanElement ();
spanH32 . SetText ( "Level 3 Header" );
h3 . AppendChild ( spanH32 );
Aspose . Pdf . LogicalStructure . SpanElement spanH41 = taggedContent . CreateSpanElement ();
spanH41 . SetText ( "H4. " );
h4 . AppendChild ( spanH41 );
Aspose . Pdf . LogicalStructure . SpanElement spanH42 = taggedContent . CreateSpanElement ();
spanH42 . SetText ( "Level 4 Header" );
h4 . AppendChild ( spanH42 );
Aspose . Pdf . LogicalStructure . SpanElement spanH51 = taggedContent . CreateSpanElement ();
spanH51 . SetText ( "H5. " );
h5 . AppendChild ( spanH51 );
Aspose . Pdf . LogicalStructure . SpanElement spanH52 = taggedContent . CreateSpanElement ();
spanH52 . SetText ( "Level 5 Header" );
h5 . AppendChild ( spanH52 );
Aspose . Pdf . LogicalStructure . SpanElement spanH61 = taggedContent . CreateSpanElement ();
spanH61 . SetText ( "H6. " );
h6 . AppendChild ( spanH61 );
Aspose . Pdf . LogicalStructure . SpanElement spanH62 = taggedContent . CreateSpanElement ();
spanH62 . SetText ( "Level 6 Header" );
h6 . AppendChild ( spanH62 );
Aspose . Pdf . LogicalStructure . ParagraphElement p = taggedContent . CreateParagraphElement ();
p . SetText ( "P. " );
rootElement . AppendChild ( p );
Aspose . Pdf . LogicalStructure . SpanElement span1 = taggedContent . CreateSpanElement ();
span1 . SetText ( "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " );
p . AppendChild ( span1 );
Aspose . Pdf . LogicalStructure . SpanElement span2 = taggedContent . CreateSpanElement ();
span2 . SetText ( "Aenean nec lectus ac sem faucibus imperdiet. " );
p . AppendChild ( span2 );
Aspose . Pdf . LogicalStructure . SpanElement span3 = taggedContent . CreateSpanElement ();
span3 . SetText ( "Sed ut erat ac magna ullamcorper hendrerit. " );
p . AppendChild ( span3 );
Aspose . Pdf . LogicalStructure . SpanElement span4 = taggedContent . CreateSpanElement ();
span4 . SetText ( "Cras pellentesque libero semper, gravida magna sed, luctus leo. " );
p . AppendChild ( span4 );
Aspose . Pdf . LogicalStructure . SpanElement span5 = taggedContent . CreateSpanElement ();
span5 . SetText ( "Fusce lectus odio, laoreet nec ullamcorper ut, molestie eu elit. " );
p . AppendChild ( span5 );
Aspose . Pdf . LogicalStructure . SpanElement span6 = taggedContent . CreateSpanElement ();
span6 . SetText ( "Interdum et malesuada fames ac ante ipsum primis in faucibus. " );
p . AppendChild ( span6 );
Aspose . Pdf . LogicalStructure . SpanElement span7 = taggedContent . CreateSpanElement ();
span7 . SetText ( "Aliquam lacinia sit amet elit ac consectetur. Donec cursus condimentum ligula, vitae volutpat sem tristique eget. " );
p . AppendChild ( span7 );
Aspose . Pdf . LogicalStructure . SpanElement span8 = taggedContent . CreateSpanElement ();
span8 . SetText ( "Nulla in consectetur massa. Vestibulum vitae lobortis ante. Nulla ullamcorper pellentesque justo rhoncus accumsan. " );
p . AppendChild ( span8 );
Aspose . Pdf . LogicalStructure . SpanElement span9 = taggedContent . CreateSpanElement ();
span9 . SetText ( "Mauris ornare eu odio non lacinia. Aliquam massa leo, rhoncus ac iaculis eget, tempus et magna. Sed non consectetur elit. " );
p . AppendChild ( span9 );
Aspose . Pdf . LogicalStructure . SpanElement span10 = taggedContent . CreateSpanElement ();
span10 . SetText ( "Sed vulputate, quam sed lacinia luctus, ipsum nibh fringilla purus, vitae posuere risus odio id massa. Cras sed venenatis lacus." );
p . AppendChild ( span10 );
// Save Tagged PDF Document
document . Save ( dataDir + "InlineStructureElements_out.pdf" );
}
사용자 정의 태그 이름 설정
태그가 있는 PDF 문서의 요소에 대한 사용자 정의 태그 이름을 설정하기 위해 Aspose.PDF는 StructureElement 클래스의 SetTag 메서드를 제공합니다. 다음 코드 스니펫은 사용자 정의 태그 이름을 설정하는 방법을 보여줍니다:
요소에 구조 요소 추가
이 기능은 버전 19.4 이상에서 지원됩니다.
태그가 있는 PDF 문서에서 링크 구조 요소를 설정하기 위해 Aspose.PDF는 ITaggedContent 인터페이스의 CreateLinkElement 메서드를 제공합니다. 다음 코드 스니펫은 태그가 있는 PDF 문서의 텍스트가 포함된 단락에 구조 요소를 설정하는 방법을 보여줍니다:
링크 구조 요소 설정
이 기능은 버전 19.4 이상에서 지원됩니다.
Aspose.PDF for .NET API는 링크 구조 요소를 추가할 수 있도록 합니다. 다음 코드 스니펫은 태그가 있는 PDF 문서에 링크 구조 요소를 추가하는 방법을 보여줍니다:
.NET Core 3.1
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddLinkElement ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF document
using ( var document = new Aspose . Pdf . Document ())
{
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document . TaggedContent ;
// Setting Title and Nature Language for document
taggedContent . SetTitle ( "Text Elements Example" );
taggedContent . SetLanguage ( "en-US" );
// Getting Root structure element (Document structure element)
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . ParagraphElement p1 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p1 );
Aspose . Pdf . LogicalStructure . SpanElement span11 = taggedContent . CreateSpanElement ();
span11 . SetText ( "Span_11" );
Aspose . Pdf . LogicalStructure . SpanElement span12 = taggedContent . CreateSpanElement ();
span12 . SetText ( " and Span_12." );
p1 . SetText ( "Paragraph with " );
p1 . AppendChild ( span11 );
p1 . AppendChild ( span12 );
Aspose . Pdf . LogicalStructure . ParagraphElement p2 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p2 );
Aspose . Pdf . LogicalStructure . SpanElement span21 = taggedContent . CreateSpanElement ();
span21 . SetText ( "Span_21" );
Aspose . Pdf . LogicalStructure . SpanElement span22 = taggedContent . CreateSpanElement ();
span22 . SetText ( "Span_22." );
p2 . AppendChild ( span21 );
p2 . SetText ( " and " );
p2 . AppendChild ( span22 );
Aspose . Pdf . LogicalStructure . ParagraphElement p3 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p3 );
Aspose . Pdf . LogicalStructure . SpanElement span31 = taggedContent . CreateSpanElement ();
span31 . SetText ( "Span_31" );
Aspose . Pdf . LogicalStructure . SpanElement span32 = taggedContent . CreateSpanElement ();
span32 . SetText ( " and Span_32" );
p3 . AppendChild ( span31 );
p3 . AppendChild ( span32 );
p3 . SetText ( "." );
Aspose . Pdf . LogicalStructure . ParagraphElement p4 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p4 );
Aspose . Pdf . LogicalStructure . SpanElement span41 = taggedContent . CreateSpanElement ();
Aspose . Pdf . LogicalStructure . SpanElement span411 = taggedContent . CreateSpanElement ();
span411 . SetText ( "Span_411, " );
span41 . SetText ( "Span_41, " );
span41 . AppendChild ( span411 );
Aspose . Pdf . LogicalStructure . SpanElement span42 = taggedContent . CreateSpanElement ();
Aspose . Pdf . LogicalStructure . SpanElement span421 = taggedContent . CreateSpanElement ();
span421 . SetText ( "Span 421 and " );
span42 . AppendChild ( span421 );
span42 . SetText ( "Span_42" );
p4 . AppendChild ( span41 );
p4 . AppendChild ( span42 );
p4 . SetText ( "." );
// Save Tagged PDF Document
document . Save ( dataDir + "AddStructureElementIntoElement_out.pdf" );
}
// Check PDF/UA compliance
using ( var document = new Aspose . Pdf . Document ( dataDir + "AddStructureElementIntoElement_out.pdf" ))
{
bool isPdfUaCompliance = document . Validate ( dataDir + "46144_log.xml" , Aspose . Pdf . PdfFormat . PDF_UA_1 );
Console . WriteLine ( String . Format ( "PDF/UA compliance: {0}" , isPdfUaCompliance ));
}
}
.NET 8
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddLinkElement ()
{
// The path to the documents directory
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
// Create PDF document
using var document1 = new Aspose . Pdf . Document ();
Aspose . Pdf . Tagged . ITaggedContent taggedContent = document1 . TaggedContent ;
// Setting Title and Nature Language for document
taggedContent . SetTitle ( "Text Elements Example" );
taggedContent . SetLanguage ( "en-US" );
// Getting Root structure element (Document structure element)
Aspose . Pdf . LogicalStructure . StructureElement rootElement = taggedContent . RootElement ;
Aspose . Pdf . LogicalStructure . ParagraphElement p1 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p1 );
Aspose . Pdf . LogicalStructure . SpanElement span11 = taggedContent . CreateSpanElement ();
span11 . SetText ( "Span_11" );
Aspose . Pdf . LogicalStructure . SpanElement span12 = taggedContent . CreateSpanElement ();
span12 . SetText ( " and Span_12." );
p1 . SetText ( "Paragraph with " );
p1 . AppendChild ( span11 );
p1 . AppendChild ( span12 );
Aspose . Pdf . LogicalStructure . ParagraphElement p2 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p2 );
Aspose . Pdf . LogicalStructure . SpanElement span21 = taggedContent . CreateSpanElement ();
span21 . SetText ( "Span_21" );
Aspose . Pdf . LogicalStructure . SpanElement span22 = taggedContent . CreateSpanElement ();
span22 . SetText ( "Span_22." );
p2 . AppendChild ( span21 );
p2 . SetText ( " and " );
p2 . AppendChild ( span22 );
Aspose . Pdf . LogicalStructure . ParagraphElement p3 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p3 );
Aspose . Pdf . LogicalStructure . SpanElement span31 = taggedContent . CreateSpanElement ();
span31 . SetText ( "Span_31" );
Aspose . Pdf . LogicalStructure . SpanElement span32 = taggedContent . CreateSpanElement ();
span32 . SetText ( " and Span_32" );
p3 . AppendChild ( span31 );
p3 . AppendChild ( span32 );
p3 . SetText ( "." );
Aspose . Pdf . LogicalStructure . ParagraphElement p4 = taggedContent . CreateParagraphElement ();
rootElement . AppendChild ( p4 );
Aspose . Pdf . LogicalStructure . SpanElement span41 = taggedContent . CreateSpanElement ();
Aspose . Pdf . LogicalStructure . SpanElement span411 = taggedContent . CreateSpanElement ();
span411 . SetText ( "Span_411, " );
span41 . SetText ( "Span_41, " );
span41 . AppendChild ( span411 );
Aspose . Pdf . LogicalStructure . SpanElement span42 = taggedContent . CreateSpanElement ();
Aspose . Pdf . LogicalStructure . SpanElement span421 = taggedContent . CreateSpanElement ();
span421 . SetText ( "Span 421 and " );
span42 . AppendChild ( span421 );
span42 . SetText ( "Span_42" );
p4 . AppendChild ( span41 );
p4 . AppendChild ( span42 );
p4 . SetText ( "." );
// Save Tagged PDF Document
document1 . Save ( dataDir + "AddStructureElementIntoElement_out.pdf" );
// Check PDF/UA compliance
using var document2 = new Aspose . Pdf . Document ( dataDir + "AddStructureElementIntoElement_out.pdf" );
bool isPdfUaCompliance = document2 . Validate ( dataDir + "46144_log.xml" , Aspose . Pdf . PdfFormat . PDF_UA_1 );
Console . WriteLine ( String . Format ( "PDF/UA compliance: {0}" , isPdfUaCompliance ));
}
노트 구조 요소 설정
Aspose.PDF for .NET API는 태그가 있는 PDF 문서에 NoteElement 를 추가할 수 있도록 합니다. 다음 코드 스니펫은 태그가 있는 PDF 문서에 노트 요소를 추가하는 방법을 보여줍니다:
언어 및 제목 설정
이 기능은 버전 19.6 이상에서 지원됩니다.
Aspose.PDF for .NET API는 PDF/UA 사양에 따라 문서의 언어 및 제목을 설정할 수 있도록 합니다. 언어는 전체 문서 또는 개별 구조 요소에 대해 설정할 수 있습니다. 다음 코드 스니펫은 태그가 있는 PDF 문서에서 언어 및 제목을 설정하는 방법을 보여줍니다: