文檔首頁>>Aspose.PDF使用教程>>Aspose.Pdf使用教程:從PDF文件中獲取個(gè)別的附件
Aspose.Pdf使用教程:從PDF文件中獲取個(gè)別的附件
PDF處理控件Aspose.Pdf的Document對(duì)象的EmbeddedFiles集合中包含了所有的附件。這個(gè)集合的每個(gè)元素代表一個(gè)FileSpecification對(duì)象。 如果你想從集合中得到一個(gè)單一的附件,你可以通過使用Index索引值來實(shí)現(xiàn)。Index代表被取出文件的數(shù)量。這種方式,你可以得到一個(gè)FileSpecification對(duì)象。 一旦這個(gè)對(duì)象是可用的,您就可以檢索福建的所有屬性或附件本身。
下面是從PDF文件中獲取單一附件的代碼片段:
C#
//open document Document pdfDocument = new Document("input.pdf"); //get particular embedded file FileSpecification fileSpecification = pdfDocument.EmbeddedFiles[1]; //get the file properties Console.WriteLine("Name: {0}", fileSpecification.Name); Console.WriteLine("Description: {0}", fileSpecification.Description); Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType); //check if parameter object contains the parameters if (fileSpecification.Params != null) { Console.WriteLine("CheckSum: {0}", fileSpecification.Params.CheckSum); Console.WriteLine("Creation Date: {0}", fileSpecification.Params.CreationDate); Console.WriteLine("Modification Date: {0}", fileSpecification.Params.ModDate); Console.WriteLine("Size: {0}", fileSpecification.Params.Size); } //get the attachment and write to file or stream byte[] fileContent = new byte[fileSpecification.Contents.Length]; fileSpecification.Contents.Read(fileContent, 0, fileContent.Length); FileStream fileStream = new FileStream(fileSpecification.Name , FileMode.Create); fileStream.Write(fileContent, 0, fileContent.Length); fileStream.Close();
VB.NET
'open document Dim pdfDocument As New Document("input.pdf") 'get particular embedded file Dim fileSpecification As FileSpecification = pdfDocument.EmbeddedFiles(1) 'get the file properties Console.WriteLine("Name: {0}", fileSpecification.Name) Console.WriteLine("Description: {0}", fileSpecification.Description) Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType) 'check if parameter object contains the parameters If fileSpecification.Params IsNot Nothing Then Console.WriteLine("CheckSum: {0}", fileSpecification.Params.CheckSum) Console.WriteLine("Creation Date: {0}", fileSpecification.Params.CreationDate) Console.WriteLine("Modification Date: {0}", fileSpecification.Params.ModDate) Console.WriteLine("Size: {0}", fileSpecification.Params.Size) End If 'get the attachment and write to file or stream Dim fileContent(fileSpecification.Contents.Length - 1) As Byte fileSpecification.Contents.Read(fileContent, 0, fileContent.Length) Dim fileStream As New FileStream(fileSpecification.Name, FileMode.Create) fileStream.Write(fileContent, 0, fileContent.Length) fileStream.Close()