Aby wyodrębnić załączniki w pliku PDF, użyjemy interfejsu API Aspose.PDF for .NET, który jest bogatym w funkcje, wydajnym i łatwym w użyciu interfejsem API do manipulacji dokumentami dla platformy net. Otwórz menedżera pakietów NuGet, wyszukaj Aspose.pdf i zainstaluj. Można również użyć następującego polecenia z konsoli Menedżera pakietów.
PM > Install-Package Aspose.PDF
Wyodrębnij załączniki z pliku PDF C#
Potrzebujesz Aspose.PDF for .NET, aby wypróbować kod w swoim środowisku.
- Pobierz kolekcję osadzonych plików.
- Uzyskaj liczbę osadzonych plików.
- Pętla przez kolekcję, aby uzyskać wszystkie załączniki.
- Sprawdź, czy obiekt parametru zawiera parametry.
- Pobierz załącznik i zapisz do pliku lub strumienia.
Wyodrębnij załącznik z dokumentu PDF
static void PrintFileDetails(Aspose.Pdf.FileSpecification fileSpecification)
{
Console.WriteLine($"Name: {fileSpecification.Name}");
Console.WriteLine($"Description: {fileSpecification.Description}");
Console.WriteLine($"Mime Type: {fileSpecification.MIMEType}");
if (fileSpecification.Params != null)
{
Console.WriteLine($"CheckSum: {fileSpecification.Params.CheckSum}");
Console.WriteLine($"Creation Date: {fileSpecification.Params.CreationDate}");
Console.WriteLine($"Modification Date: {fileSpecification.Params.ModDate}");
Console.WriteLine($"Size: {fileSpecification.Params.Size}");
}
}
var inputFile = Path.Combine(dataDir, "GetAlltheAttachments.pdf");
var pdfDocument = new Aspose.Pdf.Document(inputFile);
var embeddedFiles = pdfDocument.EmbeddedFiles;
Console.WriteLine($"Total files: {embeddedFiles.Count}");
foreach (var fileSpecification in embeddedFiles)
{
PrintFileDetails(fileSpecification);
var outputFilePath = Path.Combine(dataDir, fileSpecification.Name);
using var fileStream = File.OpenWrite(outputFilePath);
fileSpecification.Contents.CopyTo(fileStream);
}