Resalte texto en PDF usando REST API en Node.js

En ciertos casos, es posible que necesitemos resaltar una frase, línea o área de texto en documentos PDF. Ayuda a resaltar texto importante con color semitransparente en un formato electrónico, de la misma manera que lo hacemos con un marcador en papel estándar. Podemos usar la función de resaltado mediante programación usando las anotaciones resaltadas dentro de las aplicaciones. En este artículo, aprenderemos cómo resaltar texto en PDF usando REST API en Node.js.

En este artículo se tratarán los siguientes temas:

API REST del resaltador de texto PDF y SDK de Node.js

Para resaltar el texto en los archivos PDF, utilizaremos la API Node.js SDK de GroupDocs.Annotation Cloud. Permite agregar anotaciones, superposiciones de marcas de agua, reemplazos de texto, redacciones y marcas de texto a los formatos de documentos admitidos. Instálalo usando el siguiente comando en la consola:

npm install groupdocs-annotation-cloud

Por favor, obtenga su ID de cliente y secreto del tablero antes de seguir los pasos mencionados. Una vez que tenga su ID y secreto, agregue el código como se muestra a continuación:

// Este ejemplo de código demuestra cómo agregar su ID de cliente y secreto en el código.
global.clientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
global.clientSecret = "b377c36cfa28fa69960ebac6b6e36421";
global.myStorage = "";

const configuration = new groupdocs_annotation_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

Resalte texto en PDF usando REST API en Node.js

Podemos resaltar texto en archivos PDF siguiendo los sencillos pasos que se indican a continuación:

  1. Subir el archivo PDF a la nube
  2. Resaltar texto en el PDF cargado
  3. Descargar el archivo anotado

Sube el documento

En primer lugar, cargaremos el archivo PDF en la nube utilizando el ejemplo de código que se proporciona a continuación:

// Este ejemplo de código demuestra cómo cargar un archivo PDF en la nube.
// Inicializar instancia de API
var fileApi = new groupdocs_annotation_cloud.FileApi(configuration);

// Abra el archivo en IOStream desde local/disco.
var resourcesFolder = 'C:\\Files\\Annotation\\sample.pdf';

// Leer el archivo
fs.readFile(resourcesFolder, (err, fileStream) => {
  // Subir solicitud de archivo
  var request = new groupdocs_annotation_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // Subir archivo
  fileApi.uploadFile(request);
});

Como resultado, el archivo PDF cargado estará disponible en la sección de archivos del tablero en la nube.

Resaltar texto en documento PDF usando Node.js

Ahora, agregaremos anotaciones resaltadas para resaltar el texto en el documento PDF cargado siguiendo los pasos que se detallan a continuación:

  • En primer lugar, cree una instancia de AnnotateApi.
  • A continuación, establezca las posiciones de los puntos de anotación.
  • Luego, asigne puntos al objeto AnnotationInfo y configure su color y tipo de fondo.
  • A continuación, proporcione la ruta del archivo de entrada.
  • Luego, inicialice el objeto AnnotateOptions y configure la ruta del archivo de salida.
  • Después de eso, cree AnnotateRequest con AnnotateOptions como argumento.
  • Finalmente, resalte el texto en PDF usando el método AnnotateApi.annotate().

El siguiente ejemplo de código muestra cómo resaltar texto en un documento PDF usando una API REST en Node.js.

// Este ejemplo de código demuestra cómo agregar anotaciones resaltadas a un archivo PDF.
// Inicializar instancia de API
let annotateApi = groupdocs_annotation_cloud.AnotarApi.fromKeys(clientId, clientSecret);

// Definir anotación
let a1 = new groupdocs_annotation_cloud.AnnotationInfo();

// Punto 1
let p1 = new groupdocs_annotation_cloud.Point();
p1.x = 30;
p1.y = 710;

// punto 2
let p2 = new groupdocs_annotation_cloud.Point();
p2.x = 460;
p2.y = 710;

// punto 3
let p3 = new groupdocs_annotation_cloud.Point();
p3.x = 30;
p3.y = 690;

// Punto 4
let p4 = new groupdocs_annotation_cloud.Point();
p4.x = 460;
p4.y = 690;

// Añadir puntos
a1.points = [p1, p2, p3, p4];

// Color de fondo
a1.backgroundColor = 3329434;

// Tipo
a1.type = groupdocs_annotation_cloud.AnnotationInfo.TipoEnum.TextHighlight;

// Fichero de entrada
let fileInfo = new groupdocs_annotation_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Definir opciones de anotación
let options = new groupdocs_annotation_cloud.AnotarOptions();
options.fileInfo = fileInfo;

// Asignar anotación
options.annotations = [a1];

// Ruta del archivo de salida
options.outputPath = "output.pdf";

// Crear solicitud de anotación
let request = new groupdocs_annotation_cloud.AnotarRequest(options);

// Anotar
let result = await annotateApi.annotate(request);

// Hecho
console.log("AddAreaAnnotation: Area Annotation added: " + result.href);
Resaltar texto en documento PDF usando Node.js

Resaltar texto en documento PDF usando Node.js

Puede obtener el valor de color requerido en el siguiente enlace para usarlo como color de fondo. https://docs.microsoft.com/en-us/office/vba/api/excel.xlrgbcolor

Descargar el archivo anotado

El ejemplo de código anterior guardará el archivo PDF anotado en la nube. Se puede descargar usando el siguiente ejemplo de código:

// Este ejemplo de código demuestra cómo descargar un archivo PDF desde la nube.
// Construir FileApi
var fileApi = new groupdocs_annotation_cloud.FileApi(configuration);

// Crear solicitud de archivo de descarga
let request = new groupdocs_annotation_cloud.DownloadFileRequest("output.pdf", myStorage);

// Descargar archivo
let response = await fileApi.downloadFile(request);

// Guardar archivo en su directorio de trabajo
fs.writeFile("C:\\Files\\Annotation\\output.pdf", response, "binary", function (err) { });

Prueba en línea

Pruebe la siguiente herramienta gratuita de anotación de PDF en línea, que se desarrolla utilizando la API anterior. https://products.groupdocs.app/annotation/pdf

Conclusión

En este artículo, hemos aprendido a:

  • agregue anotaciones resaltadas a un PDF usando Node.js;
  • cargue mediante programación el archivo PDF en la nube;
  • descargue el archivo PDF anotado de la nube.

Además, puede obtener más información sobre GroupDocs.Annotation Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar e interactuar con nuestras API directamente a través del navegador. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también