HTML
JPG
PDF
XML
DOCX
PDF
Thay thế Liên kết trong PDF bằng .NET SDK
Thay thế một chú thích Liên kết trong Tài liệu PDF bằng API .NET phía máy chủ.
Get StartedCách thay thế Liên kết qua Cloud .NET SDK
Để thay thế một chú thích Liên kết qua Cloud .NET SDK, chúng tôi sẽ sử dụng Aspose.PDF Cloud .NET SDK Cloud SDK này cho phép bạn dễ dàng xây dựng các ứng dụng tạo, chỉnh sửa & chuyển đổi PDF trên đám mây bằng C#, ASP.NET hoặc các ngôn ngữ .NET khác cho các nền tảng đám mây khác nhau. Mở NuGet trình quản lý gói, tìm kiếm Aspose.PDF Cloud và cài đặt. Bạn cũng có thể sử dụng lệnh sau từ Bảng điều khiển Quản lý Gói.
Lệnh Bảng điều khiển Quản lý Gói
PM> Install-Package Aspose.Pdf-Cloud
Các bước để thay thế một Liên kết qua .NET SDK
Các nhà phát triển Aspose.PDF Cloud có thể dễ dàng tải & thay đổi chú thích liên kết trong PDF chỉ với vài dòng mã.
- Tạo một đối tượng Cấu hình mới với Khóa và Bí mật Ứng dụng của bạn
- Tạo một đối tượng để kết nối với Cloud API
- Tải lên tệp tài liệu của bạn
- Thiết lập thuộc tính mong muốn bằng cách sử dụng hàm PutLinkAnnotationAsync
- Kiểm tra phản hồi và ghi lại kết quả
- Tải xuống tệp đã cập nhật để sử dụng cục bộ
Mã mẫu này cho thấy cách thay thế một chú thích Liên kết trong tài liệu 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);
}
}
}
}
}