Reemplazar Enlace en PDF usando .NET SDK

Reemplazar una anotación de enlace en un Documento PDF usando la API .NET del lado del servidor.

Get Started

Cómo reemplazar Enlace a través de Cloud .NET SDK

Para reemplazar una anotación de enlace a través de Cloud .NET SDK, utilizaremos Aspose.PDF Cloud .NET SDK Este SDK en la nube le permite crear fácilmente aplicaciones basadas en la nube para crear, editar y convertir PDF en C#, ASP.NET u otros lenguajes .NET para varias plataformas en la nube. Abra NuGet gestor de paquetes, busque Aspose.PDF Cloud e instale. También puede usar el siguiente comando desde la Consola del Administrador de Paquetes.

Comando de la Consola del Administrador de Paquetes


     
    PM> Install-Package Aspose.Pdf-Cloud
     
     

Pasos para reemplazar un Enlace a través de .NET SDK

Los desarrolladores de Aspose.PDF Cloud pueden cargar y cambiar fácilmente la anotación de enlace en PDF con solo unas pocas líneas de código.

  1. Cree un nuevo objeto de Configuración con su Secreto de Aplicación y Clave
  2. Cree un objeto para conectarse a la API de la Nube
  3. Cargue su archivo de documento
  4. Establezca la propiedad deseada usando la función PutLinkAnnotationAsync
  5. Verifique la respuesta y registre el resultado
  6. Descargue el archivo actualizado para uso local
 

Este código de ejemplo muestra cómo reemplazar una anotación de enlace en documentos 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);
                    }
                }
            }
        }
    }