Ajouter des commentaires rapides directement sur des documents Word est une exigence courante pour les flux de travail de révision collaborative. GroupDocs.Annotation Cloud SDK for Node.JS vous permet d’ajouter programmétiquement des annotations riches sans quitter votre environnement serveur. Dans ce guide, nous vous montrerons comment créer des notes autocollantes sur les pages Word en Node.JS, en couvrant la configuration, une démonstration détaillée, un exemple de code complet et les appels cURL équivalents.
Configuration de GroupDocs.Annotation Cloud SDK for Node.JS
Avant de commencer, assurez‑vous d’avoir :
- Node.js 14+ et npm installés
- Un compte cloud GroupDocs avec clientId et clientSecret
- Accès au fichier source DOCX que vous souhaitez annoter
Installez le SDK via npm :
npm install groupdocs-annotation-cloud
Téléchargez le dernier package depuis la page de publication officielle si vous préférez une installation manuelle : GroupDocs.Annotation Cloud SDK for Node.JS Télécharger.
Créez un objet de configuration avec vos informations d’identification (extrait de l’exemple complet) :
const { Configuration } = require("@groupdocs.annotation-cloud");
const config = new Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
Avec le SDK installé et les informations d’identification prêtes, nous pouvons passer à l’implémentation.
Créer des notes autocollantes sur les pages Word dans Node.JS : Guide étape par étape
Dans ce guide, nous créerons des notes autocollantes sur les pages Word dans Node.JS en utilisant les classes d’annotation du SDK.
Étape 1 : Initialiser l’API d’annotation
Tout d’abord, importez les classes requises et créez une instance de AnnotateApi.
const { AnnotateApi, models } = require("@groupdocs.annotation-cloud");
const annotateApi = new AnnotateApi(config);
Étape 2 : Définir les fichiers source et de destination
Spécifiez le DOCX d’entrée et le chemin pour la sortie annotée.
const inputFilePath = "sample.docx";
const outputFilePath = "sample_annotated.docx";
const fileInfo = new models.FileInfo();
fileInfo.filePath = inputFilePath;
Étape 3 : Configurer la position de la note autocollante
Créez un Rectangle qui détermine où la note autocollante apparaîtra sur la page 1.
const rect = new models.Rectangle();
rect.x = 100; // distance from left edge (points)
rect.y = 100; // distance from top edge (points)
rect.width = 200; // width of the sticky note
rect.height = 100; // height of the sticky note
Étape 4 : Construire l’objet d’annotation Note autocollante
Configurez le type d’annotation, le numéro de page, le rectangle, le texte et la couleur d’arrière-plan.
const stickyNote = new models.AnnotationInfo();
stickyNote.annotationType = "StickyNote";
stickyNote.pageNumber = 1;
stickyNote.rect = rect;
stickyNote.text = "This is a sticky note added via GroupDocs.Annotation Cloud SDK.";
stickyNote.color = "FFFF00"; // Yellow background
Étape 5 : Exécuter la demande d’annotation
Assemblez les options de la requête et appelez la méthode annotate.
const annotateOptions = new models.AnnotateOptions();
annotateOptions.fileInfo = fileInfo;
annotateOptions.annotations = [stickyNote];
annotateOptions.outputPath = outputFilePath;
(async () => {
try {
const request = new models.AnnotateRequest(annotateOptions);
const response = await annotateApi.annotate(request);
console.log("Sticky note created successfully. Output saved to:", response.path);
} catch (err) {
console.error("Failed to create sticky note:", err);
}
})();
Exemple complet fonctionnel pour créer des notes autocollantes sur les pages Word en Node.JS
L’exemple suivant montre l’implémentation complète pour créer des notes autocollantes sur les pages Word en Node.JS à l’aide du GroupDocs.Annotation Cloud SDK.
const { AnnotateApi, Configuration, models } = require("@groupdocs.annotation-cloud");
// -----------------------------------------------------------------------------
// Configuration – replace with your actual GroupDocs credentials
// -----------------------------------------------------------------------------
const config = new Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET"
});
const annotateApi = new AnnotateApi(config);
// -----------------------------------------------------------------------------
// Define input and output files
// -----------------------------------------------------------------------------
const inputFilePath = "sample.docx";
const outputFilePath = "sample_annotated.docx";
// -----------------------------------------------------------------------------
// Build FileInfo object for the source document
// -----------------------------------------------------------------------------
const fileInfo = new models.FileInfo();
fileInfo.filePath = inputFilePath;
// -----------------------------------------------------------------------------
// Define rectangle (position & size) for the sticky note on page 1
// -----------------------------------------------------------------------------
const rect = new models.Rectangle();
rect.x = 100; // distance from left edge (points)
rect.y = 100; // distance from top edge (points)
rect.width = 200; // width of the sticky note
rect.height = 100; // height of the sticky note
// -----------------------------------------------------------------------------
// Create the sticky‑note annotation
// -----------------------------------------------------------------------------
const stickyNote = new models.AnnotationInfo();
stickyNote.annotationType = "StickyNote";
stickyNote.pageNumber = 1;
stickyNote.rect = rect;
stickyNote.text = "This is a sticky note added via GroupDocs.Annotation Cloud SDK.";
stickyNote.color = "FFFF00"; // Yellow background
// -----------------------------------------------------------------------------
// Assemble the annotate request options
// -----------------------------------------------------------------------------
const annotateOptions = new models.AnnotateOptions();
annotateOptions.fileInfo = fileInfo;
annotateOptions.annotations = [stickyNote];
annotateOptions.outputPath = outputFilePath;
// -----------------------------------------------------------------------------
// Execute the request
// -----------------------------------------------------------------------------
(async () => {
try {
const request = new models.AnnotateRequest(annotateOptions);
const response = await annotateApi.annotate(request);
console.log("Sticky note created successfully. Output saved to:", response.path);
} catch (err) {
console.error("Failed to create sticky note:", err);
}
})();
Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez-vous de mettre à jour tous les chemins de fichiers et les valeurs de configuration pour qu’ils correspondent à votre environnement réel, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Ajout d’annotations de notes autocollantes avec cURL et l’API REST
L’API REST offre la même capacité sans écrire de code. Ci-dessous les appels cURL requis.
Tout d’abord, obtenez un jeton d’accès :
curl -X POST "https://api.groupdocs.cloud/v2.0.0/auth/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
Téléchargez le fichier DOCX source (remplacez YOUR_ACCESS_TOKEN par le jeton de l’étape précédente) :
curl -X PUT "https://api.groupdocs.cloud/v2.0.0/storage/file/sample.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/octet-stream" \
--data-binary @sample.docx
Créer l’annotation de note autocollante :
curl -X POST "https://api.groupdocs.cloud/v2.0.0/annotation/annotate" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileInfo": { "filePath": "sample.docx" },
"annotations": [
{
"annotationType": "StickyNote",
"pageNumber": 1,
"rect": { "x": 100, "y": 100, "width": 200, "height": 100 },
"text": "This is a sticky note added via GroupDocs.Annotation Cloud SDK.",
"color": "FFFF00"
}
],
"outputPath": "sample_annotated.docx"
}'
Téléchargez le document annoté :
curl -X GET "https://api.groupdocs.cloud/v2.0.0/storage/file/sample_annotated.docx?download=true" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o sample_annotated.docx
Pour plus de détails sur les charges utiles de la requête, consultez la référence API.
Configuration des options d’annotation pour les notes autocollantes
Le SDK expose plusieurs propriétés qui vous permettent d’ajuster finement l’apparence et le comportement des notes autocollantes :
- annotationType - doit être défini sur
"StickyNote"(obligatoire). - pageNumber - la page où la note apparaîtra.
- rect - définit la position (
x,y) et la taille (width,height). Ajustez ces valeurs pour contrôler le placement. - text - le contenu de la note.
- color - couleur d’arrière-plan en HEX (par ex.,
"FFFF00"pour le jaune).
Vous pouvez également définir des champs optionnels tels que author, fontFamily ou opacity via le modèle AnnotationInfo. Consultez la Référence API pour la liste complète des propriétés configurables.
Conclusion
En suivant les étapes ci‑dessus, vous savez maintenant comment créer des notes autocollantes sur les pages Word dans Node.JS en utilisant le SDK GroupDocs.Annotation Cloud. Que vous préfériez une implémentation native Node.js ou un flux de travail cURL basé sur REST, le SDK offre une méthode cohérente et fiable pour annoter des fichiers DOCX de manière programmatique. N’oubliez pas d’appliquer une licence valide pour une utilisation en production ; vous pouvez obtenir une licence temporaire depuis la page de licence ou consulter les options de tarification sur la page du produit. Bonne annotation !
FAQ
Comment créer des notes autocollantes sur des pages Word dans Node.JS en utilisant GroupDocs.Annotation Cloud SDK ?
Utilisez l’AnnotateApi comme le montre l’exemple de code. Le SDK gère automatiquement l’accès aux fichiers, la création d’annotations et la génération de la sortie.Quels formats de fichiers sont pris en charge pour l’annotation avec le SDK ?
Le SDK fonctionne avec DOCX, PDF, PPTX, XLSX, et de nombreux autres formats populaires. Consultez la liste complète dans la documentation officielle.Comment m’authentifier lors de l’utilisation de l’API REST pour les notes autocollantes ?
Obtenez un jeton d’accès via le point de terminaison/auth/tokenen utilisant vos identifiants client, puis incluez le jeton dans l’en-têteAuthorization: Bearerpour tous les appels suivants. Les étapes détaillées se trouvent dans la référence API.Puis-je personnaliser la couleur ou la taille de la note autocollante ?
Oui. Définissez la propriétécolorsur une valeur HEX et ajustez les dimensionsrect(width,height) pour contrôler la taille et le placement de la note.
