HTML
JPG
PDF
XML
DOCX
PDF
Work with Links in PDF via .NET SDK
API for working with Links in PDF documents with .NET.
Get StartedHow to work with Links in PDF documents using Cloud .NET SDK
In order to manipulate Links in PDF documents via Cloud .NET SDK , we’ll use Aspose.PDF Cloud .NET SDK This Cloud SDK allows you to easily build cloud-based PDF creator, editor & converter apps in C#, ASP.NET, or other .NET languages for various cloud platforms. Open NuGet package manager, search for Aspose.PDF Cloud and install. You may also use the following command from the Package Manager Console.
Package Manager Console Command
PM> Install-Package Aspose.Pdf-Cloud
Steps to add links using .NET SDK
Aspose.PDF Cloud developers can easily load & append links to PDF documents in just a few lines of code.
- Create a new Configuration object with your Application Secret and Key.
- Create an object to connect to the Cloud API.
- Uploads the PDF to cloud storage.
- Create new link annotation objects
- Append a new links annotation objects to the PDF in cloud storage using PostPageLinkAnnotationsAsync function.
- Checks the response and logs the result.
- Downloads the updated file for local use.
This sample code shows adding links to PDF document
using Aspose.Pdf.Cloud.Sdk.Model;
namespace Links
{
public class LinksAdd
{
public static async Task Append(string documentName, string outputName, int pageNumber, string LinkAction, string remoteFolder)
{
// Get your AppSid and AppSecret from https://dashboard.aspose.cloud (free registration required).
pdfApi = new PdfApi(AppSecret, AppSid);
using (var file = File.OpenRead(Path.Combine(localFolder, documentName)))
{ // Upload the local PDF to cloud storage folder name.
FilesUploadResult uploadResponse = await pdfApi.UploadFileAsync(Path.Combine(remoteFolder, documentName), documentName);
Console.WriteLine(uploadResponse.Uploaded[0]);
}
// Create link annotation object with supported parameters
Link link = new Link(LinkAction);
LinkAnnotation newLink = new LinkAnnotation(
new List<Link>() { link },
ActionType: LinkActionType.GoToURIAction,
Action: LinkAction,
Highlighting: LinkHighlightingMode.Invert,
Color: new Color(A: 0xFF, R: 0xAA, G: 0x00, B: 0x00),
Rect: new Rectangle(LLX: 238, LLY: 488.622, URX: 305, URY: 498.588)
);
// Append new link annotation to the PDF on cloud storage.
AsposeResponse response = await pdfApi.PostPageLinkAnnotationsAsync(documentName, pageNumber, new List<LinkAnnotation>() { newLink }, folder: remoteFolder);
// Checks the response and logs the result.
if (response == null)
Console.WriteLine("LinksAdd(): Unexpected error!");
else if (response.Code < 200 || response.Code > 299)
Console.WriteLine("LinksAdd(): Failed to append link to the document.");
else
{ // Downloads the updated file for local use.
Console.WriteLine("PagesAdd(): page successfully appended to the document '{0}.", documentName);
Stream stream = pdfApi.DownloadFile(Path.Combine(remoteFolder, documentName));
using var fileStream = File.Create(Path.Combine(localFolder, "append_links_" + outputName));
stream.Position = 0;
await stream.CopyToAsync(fileStream);
Console.WriteLine("PagesAdd(): File '{0}' successfully downloaded.", "append_links_" + outputName);
}
}
}
}