HTML
JPG
PDF
XML
DOCX
PDF
Замена ссылки в PDF с использованием .NET SDK
Замените аннотацию ссылки в PDF-документе с помощью серверного .NET API.
Get StartedКак заменить ссылку через Cloud .NET SDK
Чтобы заменить аннотацию ссылки через Cloud .NET SDK, мы используем Aspose.PDF Cloud .NET SDK Этот Cloud SDK позволяет легко создавать облачные приложения для создания, редактирования и конвертации PDF в C#, ASP.NET или других языках .NET для различных облачных платформ. Откройте NuGet менеджер пакетов, найдите Aspose.PDF Cloud и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.
Команда консоли диспетчера пакетов
PM> Install-Package Aspose.Pdf-Cloud
Шаги по замене ссылки через .NET SDK
Разработчики Aspose.PDF Cloud могут легко загрузить и изменить аннотацию ссылки в PDF всего за несколько строк кода.
- Создайте новый объект Configuration с вашим секретом и ключом приложения
- Создайте объект для подключения к Cloud API
- Загрузите файл документа
- Установите желаемое свойство с помощью функции PutLinkAnnotationAsync
- Проверьте ответ и запишите результат
- Загрузите обновленный файл для локального использования
Этот пример кода показывает замену аннотации ссылки в PDF-документах
using Aspose.Pdf.Cloud.Sdk.Model;
namespace Links
{
public class LinksReplace
{
public static async Task Modify(string documentName, string outputName, string LinkID, 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]);
}
// Extract Link annotation by Id
LinkAnnotationResponse getResponse = await pdfApi.GetLinkAnnotationAsync(documentName, LinkID, folder: remoteFolder);
if (getResponse == null)
Console.WriteLine("LinksReplace(): Unexpected error in GetLink!");
else if (getResponse.Code < 200 || getResponse.Code > 299)
Console.WriteLine("LinksReplace(): Failed to receive link from the document.");
else if (getResponse.Link == null)
Console.WriteLine("LinksReplace(): link '{0}' not found in the document '{1]'.", LinkID, documentName);
else {
Console.WriteLine("LinksReplace(): link '{0}' successfully received from the document '{1}.", LinkID, documentName);
Console.WriteLine(getResponse.Link.ToString());
Link link = new Link(LinkAction);
LinkAnnotation newLink = new LinkAnnotation(
new List<Link>() { link },
ActionType: getResponse.Link.ActionType,
Action: LinkAction,
Highlighting: getResponse.Link.Highlighting,
Color: new Color(A: 0xFF, R: 0xAA, G: 0x00, B: 0x00),
Rect: getResponse.Link.Rect
);
// Replace a link annotation with LinkId in the PDF on cloud storage.
AsposeResponse response = await pdfApi.PutLinkAnnotationAsync(documentName, LinkID, newLink, folder: remoteFolder);
if (response == null)
Console.WriteLine("LinksReplace(): Unexpected error in Modify!");
else if (response.Code < 200 || response.Code > 299)
Console.WriteLine("LinksReplace(): Failed to replaced link in the document.");
else { // Downloads the updated file for local use.
Console.WriteLine("LinksReplace(): link '{0}' successfully replaced in the document '{1}.", LinkID, documentName);
Stream stream = pdfApi.DownloadFile(Path.Combine(remoteFolder, documentName));
using var fileStream = File.Create(Path.Combine(localFolder, "replace_linkk_" + outputName));
stream.Position = 0;
await stream.CopyToAsync(fileStream);
Console.WriteLine("LinksReplace(): File '{0}' successfully downloaded.", "replace_link_" + outputName);
}
}
}
}
}