Podświetl tekst w PDF przy użyciu REST API w Node.js

W niektórych przypadkach może zaistnieć potrzeba wyróżnienia frazy tekstowej, linii lub obszaru w dokumentach PDF. Pomaga podkreślić ważny tekst półprzezroczystym kolorem w formacie elektronicznym, tak samo jak robimy to za pomocą markera na standardowym papierze. Możemy programowo użyć funkcji podświetlenia, używając adnotacji podświetlenia w aplikacjach. W tym artykule dowiemy się, jak wyróżniać tekst w PDF za pomocą REST API w Node.js.

W tym artykule zostaną omówione następujące tematy:

PDF Text Highlighter REST API i Node.js SDK

Do podświetlania tekstu w plikach PDF będziemy używać Node.js SDK of GroupDocs.Annotation Cloud API. Umożliwia dodawanie adnotacji, nakładek ze znakami wodnymi, zamiany tekstu, redakcji i znaczników tekstu do obsługiwanych formatów dokumentów. Zainstaluj go za pomocą następującego polecenia w konsoli:

npm install groupdocs-annotation-cloud

Proszę uzyskaj swój identyfikator klienta i klucz tajny z pulpitu nawigacyjnego przed wykonaniem wspomnianych kroków. Po uzyskaniu identyfikatora i tajnego kodu dodaj kod, jak pokazano poniżej:

// Ten przykład kodu pokazuje, jak dodać identyfikator klienta i klucz tajny do kodu.
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";

Podświetl tekst w PDF przy użyciu REST API w Node.js

Możemy wyróżnić tekst w plikach PDF, wykonując proste czynności podane poniżej:

  1. Prześlij plik PDF do chmury
  2. Podświetl tekst w przesłanym pliku PDF
  3. Pobierz plik z adnotacjami

Prześlij dokument

Najpierw prześlemy plik PDF do chmury, korzystając z przykładowego kodu podanego poniżej:

// Ten przykład kodu demonstruje, jak przekazać plik PDF do chmury.
// Zainicjuj instancję interfejsu API
var fileApi = new groupdocs_annotation_cloud.FileApi(configuration);

// Otwórz plik w IOStream z pliku local/disc.
var resourcesFolder = 'C:\\Files\\Annotation\\sample.pdf';

// Przeczytaj plik
fs.readFile(resourcesFolder, (err, fileStream) => {
  // Prześlij prośbę o plik
  var request = new groupdocs_annotation_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // Przesyłanie pliku
  fileApi.uploadFile(request);
});

W rezultacie przesłany plik PDF będzie dostępny w sekcji plików pulpitu nawigacyjnego w chmurze.

Zaznacz tekst w dokumencie PDF za pomocą Node.js

Teraz dodamy adnotacje wyróżnienia, aby wyróżnić tekst w przesłanym dokumencie PDF, wykonując czynności podane poniżej:

  • Najpierw utwórz instancję klasy AnnotateApi.
  • Następnie ustaw pozycje punktów adnotacji.
  • Następnie przypisz punkty do obiektu AnnotationInfo oraz ustaw kolor i typ jego tła.
  • Następnie podaj ścieżkę pliku wejściowego.
  • Następnie zainicjuj obiekt AnnotateOptions i ustaw ścieżkę pliku wyjściowego.
  • Następnie utwórz AnnotateRequest z AnnotateOptions jako argumentem.
  • Na koniec zaznacz tekst w pliku PDF za pomocą metody AnnotateApi.annotate().

Poniższy przykładowy kod pokazuje, jak wyróżniać tekst w dokumencie PDF przy użyciu interfejsu API REST w Node.js.

// Ten przykład kodu pokazuje, jak dodać adnotacje wyróżnienia do pliku PDF.
// Zainicjuj instancję interfejsu API
let annotateApi = groupdocs_annotation_cloud.KomentowaćApi.fromKeys(clientId, clientSecret);

// Zdefiniuj adnotację
let a1 = new groupdocs_annotation_cloud.AnnotationInfo();

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

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

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

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

// Dodaj punkty
a1.points = [p1, p2, p3, p4];

// Kolor tła
a1.backgroundColor = 3329434;

// Typ
a1.type = groupdocs_annotation_cloud.AnnotationInfo.TypEnum.TextHighlight;

// Plik wejściowy
let fileInfo = new groupdocs_annotation_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Zdefiniuj opcje adnotacji
let options = new groupdocs_annotation_cloud.KomentowaćOptions();
options.fileInfo = fileInfo;

// Przypisz adnotację
options.annotations = [a1];

// Ścieżka pliku wyjściowego
options.outputPath = "output.pdf";

// Utwórz żądanie adnotacji
let request = new groupdocs_annotation_cloud.KomentowaćRequest(options);

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

// Zrobione
console.log("AddAreaAnnotation: Area Annotation added: " + result.href);
Zaznacz tekst w dokumencie PDF za pomocą Node.js

Zaznacz tekst w dokumencie PDF za pomocą Node.js

Możesz uzyskać wymaganą wartość koloru z poniższego łącza, aby użyć go jako koloru tła. https://docs.microsoft.com/en-us/office/vba/api/excel.xlrgbcolor

Pobierz plik z adnotacjami

Powyższy przykładowy kod zapisze plik PDF z adnotacjami w chmurze. Można go pobrać, korzystając z następującego przykładowego kodu:

// Ten przykład kodu pokazuje, jak pobrać plik PDF z chmury.
// Skonstruuj FileApi
var fileApi = new groupdocs_annotation_cloud.FileApi(configuration);

// Utwórz żądanie pobrania pliku
let request = new groupdocs_annotation_cloud.DownloadFileRequest("output.pdf", myStorage);

// Pobieranie pliku
let response = await fileApi.downloadFile(request);

// Zapisz plik w swoim katalogu roboczym
fs.writeFile("C:\\Files\\Annotation\\output.pdf", response, "binary", function (err) { });

Wypróbuj online

Wypróbuj następujące bezpłatne narzędzie online do adnotacji PDF, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/annotation/pdf

Wniosek

W tym artykule dowiedzieliśmy się, jak:

  • dodawać adnotacje podświetlenia do pliku PDF za pomocą Node.js;
  • programowo przesłać plik PDF do chmury;
  • pobierz plik PDF z adnotacjami z chmury.

Poza tym możesz dowiedzieć się więcej o GroupDocs.Annotation Cloud API, korzystając z dokumentacji. Udostępniamy również sekcję Informacje o interfejsach API, która umożliwia wizualizację naszych interfejsów API i interakcję z nimi bezpośrednio w przeglądarce. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.

Zobacz też