PDF je formát dokumentu bohatý na funkce, který podporuje řadu prvků včetně anotací, médií, formulářů atd. Hypertextový odkaz je důležitým prvkem, který se používá k navigaci v rámci PDF, z jednoho PDF do druhého, do webové stránky atd. Při programovém generování dokumentů PDF můžete často potřebovat vložit hypertextové odkazy. V tomto článku se tedy dozvíte, jak přidávat a aktualizovat hypertextové odkazy v souborech PDF v C# .NET.
- .NET API pro přidávání hypertextových odkazů do PDF
- Přidat hypertextový odkaz do PDF
- Přidat hypertextový odkaz na externí PDF
- Vložit hypertextový odkaz na konkrétní stránku
- Aktualizujte hypertextový odkaz v PDF
C# .NET API pro přidání nebo aktualizaci hypertextových odkazů v PDF
Pro manipulaci s hypertextovými odkazy v souborech PDF použijeme Aspose.PDF for .NET. Je to populární API, které vám umožňuje vytvářet, zpracovávat a převádět soubory PDF z aplikací .NET. Můžete si stáhnout binární soubory API nebo je nainstalovat pomocí NuGet.
PM> Install-Package Aspose.PDF
Přidat hypertextový odkaz do PDF v C#
Následují kroky pro přidání hypertextového odkazu na soubor PDF v C#.
- Vytvořte nový PDF nebo načtěte existující pomocí třídy Document.
- Získejte odkaz na stránku, kam chcete přidat hypertextový odkaz, z kolekce Document.Pages.
- Vytvořte objekt třídy LinkAnnotation a nastavte jeho vlastnosti.
- Inicializujte vlastnost LinkAnnotation.Action na objekt GoToURIAction obsahující URL.
- Přidat odkaz do sbírky Page.Annotations.
- Uložte PDF pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak přidat hypertextový odkaz do PDF v C#.
// Otevřete dokument
Document document = new Document("input.pdf");
// Získejte odkaz na stránku
var page = document.Pages[1];
// Vytvořit objekt anotace odkazu
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
// Vytvořte okrajový objekt pro LinkAnnotation
Border border = new Border(link);
// Nastavte hodnotu šířky okraje na 0
border.Width = 0;
// Nastavte ohraničení pro LinkAnnotation
link.Border = border;
// Zadejte typ odkazu jako vzdálené URI
link.Action = new GoToURIAction("www.aspose.com");
// Přidejte anotaci odkazu do kolekce anotací na první stránce souboru PDF
page.Annotations.Add(link);
// Uložit aktualizovaný dokument
document.Save("output.pdf");
Přidat hypertextový odkaz na externí PDF v C#
Můžete také přejít na externí soubor PDF z jednoho PDF pomocí hypertextového odkazu. Následující kroky ukazují, jak přidat hypertextový odkaz na externí soubor PDF v C#.
- Vytvořte nový PDF nebo načtěte existující pomocí třídy Document.
- Získejte odkaz na stránku, kam chcete přidat hypertextový odkaz, z kolekce Document.Pages.
- Vytvořte objekt třídy LinkAnnotation a nastavte jeho vlastnosti.
- Inicializujte vlastnost LinkAnnotation.Action na objekt GoToRemoteAction obsahující cestu k externímu PDF.
- Přidat odkaz do sbírky Page.Annotations.
- Uložte dokument pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak přidat hypertextový odkaz na externí PDF v C#.
// Otevřete dokument
Document document = new Document("input.pdf");
// Získejte odkaz na stránku
var page = document.Pages[1];
// Vytvořte hypertextový odkaz
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
link.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// Nastavit akci
link.Action = new GoToRemoteAction("external.pdf", 1);
// Přidat hypertextový odkaz na stránku
page.Annotations.Add(link);
// Uložit aktualizovaný dokument
document.Save("output.pdf");
Vložit hypertextový odkaz na konkrétní stránku PDF
V určitých případech musíte v dokumentu PDF přecházet z jedné stránky na druhou. Třída LocalHyperlink se používá k navigaci na konkrétní stránku v PDF. Níže jsou uvedeny kroky, jak toho dosáhnout.
- Vytvořte nový PDF nebo načtěte existující pomocí třídy Document.
- Získejte odkaz na stránku, kam chcete přidat hypertextový odkaz, z kolekce Document.Pages.
- Vytvořte instanci TextFragment pro nastavení textu hypertextového odkazu.
- Vytvořte instanci třídy LocalHyperlink a nastavte vlastnost LocalHyperlink.TargetPageNumber na požadované číslo stránky.
- Přiřaďte objekt LocalHyperlink vlastnosti TextFragment.Hyperlink.
- Přidejte text na stránku pomocí metody Page.Paragraphs.Add(TextFragment).
- Uložte PDF pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak přidat hypertextový odkaz pro navigaci na konkrétní stránku v PDF.
// Otevřete dokument
Document document = new Document("input.pdf");
// Získejte odkaz na stránku
var page = document.Pages[1];
// Vytvořte instanci TextFragment
Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment("link page number test to page 7");
// Vytvořte místní instanci hypertextového odkazu
Aspose.Pdf.LocalHyperlink link = new Aspose.Pdf.LocalHyperlink();
// Nastavit cílovou stránku pro instanci odkazu
link.TargetPageNumber = 7;
// Nastavit hypertextový odkaz TextFragment
text.Hyperlink = link;
// Přidejte text do kolekce odstavců stránky
page.Paragraphs.Add(text);
// Uložit aktualizovaný dokument
document.Save("output.pdf");
Aktualizace hypertextového odkazu v PDF pomocí C#
Můžete také načíst hypertextový odkaz v souboru PDF a aktualizovat jeho vlastnosti. Následují kroky k provedení této operace.
- Načtěte soubor PDF pomocí třídy Document.
- Získejte odkaz na stránku, kde se hypertextový odkaz nachází, z kolekce Document.Pages.
- Extrahujte požadovaný objekt LinkAnnotation z kolekce Page.Annotations podle indexu.
- Aktualizujte požadované vlastnosti a uložte PDF pomocí metody Document.Save(String).
Následující ukázka kódu ukazuje, jak aktualizovat hypertextový odkaz v PDF pomocí C#.
// Otevřete dokument
Document document = new Document("input.pdf");];
// Získejte první anotaci odkazu z první stránky dokumentu
LinkAnnotation linkAnnot = (LinkAnnotation)document.Pages[1].Annotations[1];
// Změňte akci odkazu a nastavte cíl jako webovou adresu
linkAnnot.Action = new GoToURIAction("www.aspose.com");
// Podle potřeby změňte další vlastnosti
// Uložit aktualizovaný dokument
document.Save("output.pdf");
Získejte bezplatnou licenci
Můžete získat bezplatnou dočasnou licenci, abyste mohli používat Aspose.PDF pro .NET bez omezení hodnocení.
Závěr
V tomto článku jste se naučili přidávat různé typy hypertextových odkazů do souborů PDF pomocí C#. Dále jste viděli, jak načíst hypertextové odkazy ze stávajících souborů PDF a programově aktualizovat jejich vlastnosti. Kromě toho můžete prozkoumat více o .NET PDF API pomocí dokumentace. V případě jakýchkoli dotazů nebo dotazů nás můžete kontaktovat prostřednictvím našeho fóra.