Formát PDF podporuje přidávání příloh do souboru PDF podobně jako přílohy e-mailu. Příloha PDF může mít formát TXT, DOCX, XLSX nebo jakýkoli jiný formát dokumentu. V tomto článku se dozvíte, jak implementovat některé základní funkce pro manipulaci s přílohami PDF ve vašich aplikacích .NET. Na konci tohoto článku budete moci extrahovat, přidávat nebo odstraňovat přílohy v PDF programově pomocí C#.
- PDF Attachment Manipulation API – bezplatné stažení
- Přidání příloh do PDF pomocí C#
- Extrahujte přílohu PDF pomocí C#
- Odebrat přílohy z PDF pomocí C#
PDF Attachment Manipulation API – bezplatné stažení
Aspose.PDF for .NET je dobře známé rozhraní API pro manipulaci s PDF, které umožňuje bezproblémové zpracování souborů PDF. Můžete číst, vytvářet, upravovat a převádět soubory PDF a manipulovat s přílohami PDF v několika krocích. API lze stáhnout jako DLL nebo MSI a také nainstalovat pomocí NuGet.
Install-Package Aspose.Pdf
Přidání příloh do PDF pomocí C#
Aspose.PDF for .NET také umožňuje přidat přílohy do souboru PDF. K tomu stačí přidat soubor do kolekce Document.EmbeddedFiles pomocí třídy FileSpecification. Níže jsou uvedeny kroky pro přidání přílohy do dokumentu PDF.
- Vytvořte nový dokument PDF pomocí třídy Document.
- Vytvořte instanci třídy FileSpecification pro načtení souboru přílohy.
- K přidání přílohy použijte metodu Document.EmbeddedFiles.Add(FileSpecification).
- Uložte dokument pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak přidat přílohu k dokumentu PDF pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Otevřete dokument
Document pdfDocument = new Document("document.pdf");
// Nastavte nový soubor, který má být přidán jako příloha
FileSpecification fileSpecification = new FileSpecification("test.txt", "Sample text file");
// Přidejte přílohu do sbírky příloh dokumentu
pdfDocument.EmbeddedFiles.Add(fileSpecification);
// Uložit nový výstup
pdfDocument.Save("output.pdf");
Extrahujte přílohu PDF pomocí C#
Nejprve se podívejme, jak načíst přílohy z dokumentu PDF. Postupujte podle následujících kroků:
- Vytvořte instanci třídy Document.
- Získejte přílohy do objektu EmbeddedFileCollection pomocí vlastnosti Document.EmbeddedFiles.
- Procházejte přílohy v EmbeddedFileCollection pomocí objektu FileSpecification.
- Přístup k vlastnostem každé přílohy pomocí objektu FileSpecification.
- Uložte přílohu jako soubor (v případě potřeby).
Následující ukázka kódu ukazuje, jak extrahovat přílohy PDF pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Otevřete dokument
Document pdfDocument = new Document("document.pdf");
// Získejte konkrétní vložený soubor
foreach(FileSpecification fileSpecification in pdfDocument.EmbeddedFiles)
{
// Získejte vlastnosti souboru
Console.WriteLine("Name: {0}", fileSpecification.Name);
Console.WriteLine("Description: {0}", fileSpecification.Description);
Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType);
// Zkontrolujte, zda objekt parametru obsahuje parametry
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);
}
// Získejte přílohu a zapište ji do souboru nebo streamu
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();
}
Odebrat přílohy z PDF pomocí C#
Ze souboru PDF můžete buď odstranit celou nebo konkrétní přílohu. K tomu poskytuje Aspose.PDF for .NET následující metody:
- Vymazat() - Deletes all the attachments.
- Smazat (String fileName) - Deletes attachment by name.
- DeleteByKey (řetězcový klíč) - Deletes attachment by key in the collection.
Níže jsou uvedeny kroky k odstranění příloh z PDF.
- Vytvořte instanci třídy Document pro načtení souboru PDF.
- K odstranění příloh použijte Document.EmbeddedFiles.Delete()(nebo jinou metodu odstranění).
- Uložte soubor pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak odstranit přílohy ze souboru PDF v C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Otevřete dokument
Document pdfDocument = new Document("document.pdf");
// Smazat všechny přílohy
pdfDocument.EmbeddedFiles.Delete();
// Uložte aktualizovaný soubor
pdfDocument.Save("output.pdf");
Závěr
V tomto článku jste viděli, jak programově manipulovat s přílohami v dokumentech PDF. Průvodce krok za krokem, odkazy na rozhraní API a ukázky kódu ukázaly, jak načíst, přidat a odebrat přílohy v souborech PDF pomocí jazyka C#. Více o Aspose.PDF for .NET se můžete dozvědět pomocí dokumentace.