翻譯|使用教程|編輯:李顯亮|2020-06-08 11:39:24.033|閱讀 339 次
概述:在本系列教程中,將為開發者帶來Aspose.PDF for .NET的一系列使用教程,例如進行文檔間的轉換,如何標記PDF文件,如何使用表單和圖表等等。本文將介紹如何創建帶標簽的PDF文檔。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Aspose.PDF for .NET是一種高PDF處理和解析API,用于在跨平臺應用程序中執行文檔管理和操作任務。API可以輕松用于生成、修改、轉換、渲染、保護和打印PDF文檔,而無需使用Adobe Acrobat。此外,API還提供PDF壓縮選項,表格創建和操作,圖形和圖像功能,廣泛的超鏈接功能,印章和水印任務,擴展的安全控制和自定義字體處理。
在接下來的系列教程中,將為開發者帶來Aspose.PDF for .NET的一系列使用教程,例如進行文檔間的轉換,如何標記PDF文件,如何使用表單和圖表等等。本文將介紹如何設置表格的邊框樣式,邊距和填充。
>>Aspose.PDF for .NET更新至最新版v20.6,歡迎下載體驗。
創建結構元素
為了在標記的PDF文檔中創建結構元素,Aspose.PDF提供了使用ITaggedContent 接口創建結構元素的方法 。以下代碼段顯示了如何創建標記PDF的結構元素:
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments(); // Create Pdf Document Document document = new Document(); // Get Content for work with TaggedPdf ITaggedContent taggedContent = document.TaggedContent; // Set Title and Language for Documnet taggedContent.SetTitle("Tagged Pdf Document"); taggedContent.SetLanguage("en-US"); // Create Grouping Elements PartElement partElement = taggedContent.CreatePartElement(); ArtElement artElement = taggedContent.CreateArtElement(); SectElement sectElement = taggedContent.CreateSectElement(); DivElement divElement = taggedContent.CreateDivElement(); BlockQuoteElement blockQuoteElement = taggedContent.CreateBlockQuoteElement(); CaptionElement captionElement = taggedContent.CreateCaptionElement(); TOCElement tocElement = taggedContent.CreateTOCElement(); TOCIElement tociElement = taggedContent.CreateTOCIElement(); IndexElement indexElement = taggedContent.CreateIndexElement(); NonStructElement nonStructElement = taggedContent.CreateNonStructElement(); PrivateElement privateElement = taggedContent.CreatePrivateElement(); // Create Text Block-Level Structure Elements ParagraphElement paragraphElement = taggedContent.CreateParagraphElement(); HeaderElement headerElement = taggedContent.CreateHeaderElement(); HeaderElement h1Element = taggedContent.CreateHeaderElement(1); // Create Text Inline-Level Structure Elements SpanElement spanElement = taggedContent.CreateSpanElement(); QuoteElement quoteElement = taggedContent.CreateQuoteElement(); NoteElement noteElement = taggedContent.CreateNoteElement(); // Create Illustration Structure Elements FigureElement figureElement = taggedContent.CreateFigureElement(); FormulaElement formulaElement = taggedContent.CreateFormulaElement(); // Methods are under development ListElement listElement = taggedContent.CreateListElement(); TableElement tableElement = taggedContent.CreateTableElement(); ReferenceElement referenceElement = taggedContent.CreateReferenceElement(); BibEntryElement bibEntryElement = taggedContent.CreateBibEntryElement(); CodeElement codeElement = taggedContent.CreateCodeElement(); LinkElement linkElement = taggedContent.CreateLinkElement(); AnnotElement annotElement = taggedContent.CreateAnnotElement(); RubyElement rubyElement = taggedContent.CreateRubyElement(); WarichuElement warichuElement = taggedContent.CreateWarichuElement(); FormElement formElement = taggedContent.CreateFormElement(); // Save Tagged Pdf Document document.Save(dataDir + "StructureElements.pdf");
創建結構元素樹
為了在標記的PDF文檔中創建結構元素樹,Aspose.PDF提供了使用ITaggedContent 接口創建結構元素樹的方法 。以下代碼段顯示了如何創建帶標簽的PDF文檔的結構元素樹:
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments(); // Create Pdf Document Document document = new Document(); // Get Content for work with TaggedPdf ITaggedContent taggedContent = document.TaggedContent; // Set Title and Language for Documnet taggedContent.SetTitle("Tagged Pdf Document"); taggedContent.SetLanguage("en-US"); // Get root structure element (Document) StructureElement rootElement = taggedContent.RootElement; // Create Logical Structure SectElement sect1 = taggedContent.CreateSectElement(); rootElement.AppendChild(sect1); SectElement sect2 = taggedContent.CreateSectElement(); rootElement.AppendChild(sect2); DivElement div11 = taggedContent.CreateDivElement(); sect1.AppendChild(div11); DivElement div12 = taggedContent.CreateDivElement(); sect1.AppendChild(div12); ArtElement art21 = taggedContent.CreateArtElement(); sect2.AppendChild(art21); ArtElement art22 = taggedContent.CreateArtElement(); sect2.AppendChild(art22); DivElement div211 = taggedContent.CreateDivElement(); art21.AppendChild(div211); DivElement div212 = taggedContent.CreateDivElement(); art21.AppendChild(div212); DivElement div221 = taggedContent.CreateDivElement(); art22.AppendChild(div221); DivElement div222 = taggedContent.CreateDivElement(); art22.AppendChild(div222); SectElement sect3 = taggedContent.CreateSectElement(); rootElement.AppendChild(sect3); DivElement div31 = taggedContent.CreateDivElement(); sect3.AppendChild(div31); // Save Tagged Pdf Document document.Save(dataDir + "StructureElementsTree.pdf");
樣式化文字結構
為了給標記的PDF文檔中的文本結構設置樣式,Aspose.PDF提供了StructureTextState類的Font,FontSize,FontStyle和ForegroundColor屬性。以下代碼段顯示了如何在帶標簽的PDF文檔中設置文本結構的樣式:
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments(); // Create Pdf Document Document document = new Document(); // Get Content for work with TaggedPdf ITaggedContent taggedContent = document.TaggedContent; // Set Title and Language for Documnet taggedContent.SetTitle("Tagged Pdf Document"); taggedContent.SetLanguage("en-US"); ParagraphElement p = taggedContent.CreateParagraphElement(); taggedContent.RootElement.AppendChild(p); // Under Development p.StructureTextState.FontSize = 18F; p.StructureTextState.ForegroundColor = Color.Red; p.StructureTextState.FontStyle = FontStyles.Italic; p.SetText("Red italic text."); // Save Tagged Pdf Document document.Save(dataDir + "StyleTextStructure.pdf");
圖解結構元素
為了說明帶有標簽的PDF文檔中的結構元素,Aspose.PDF提供了IllustrationElement類。以下代碼段顯示了如何在標記的PDF文檔中說明結構元素:
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments(); // Create Pdf Document Document document = new Document(); // Get Content for work with TaggedPdf ITaggedContent taggedContent = document.TaggedContent; // Set Title and Language for Documnet taggedContent.SetTitle("Tagged Pdf Document"); taggedContent.SetLanguage("en-US"); // Under Development IllustrationElement figure1 = taggedContent.CreateFigureElement(); taggedContent.RootElement.AppendChild(figure1); figure1.AlternativeText = "Figure One"; figure1.Title = "Image 1"; figure1.SetTag("Fig1"); figure1.SetImage("image.png"); // Save Tagged Pdf Document document.Save(dataDir + "IllustrationStructureElements.pdf");
驗證標記的PDF
用于.NET的Aspose.PDF提供了驗證PDF / UA標記PDF文檔的功能。驗證PDF / UA標準支持:
下面的代碼段顯示了如何驗證標記的PDF文檔。相應的問題將顯示在XML日志報告中。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments(); string inputFileName = dataDir + "StructureElements.pdf"; string outputLogName = dataDir + "ua-20.xml"; using (var document = new Aspose.Pdf.Document(inputFileName)) { bool isValid = document.Validate(outputLogName, Aspose.Pdf.PdfFormat.PDF_UA_1); }
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn