Bonne nouvelle pour les développeurs ! Le tout nouveau GroupDocs.Annotation Cloud 19.5 est introduit. Nous nous engageons à faire évoluer l’API REST GroupDocs.Annotation Cloud pour la rendre plus simple et facile à utiliser. Dans cet esprit, nous avons apporté les modifications nécessaires à cette version. La nouvelle API est plus optimisée avec moins de méthodes et d’options. Son architecture interne a été remaniée pour un traitement rapide et fiable afin de créer des outils d’annotation de documents et d’images avec prise en charge des opérations d’annotation basées sur le texte et la figure. Désormais, l’API inclut également des méthodes pour travailler avec le stockage en nuage. Ainsi, vous pouvez effectuer des opérations de stockage à l’aide de l’API REST GroupDocs.Annotation Cloud directement au lieu d’utiliser une API distincte.

Veuillez consulter les notes de version détaillées de cette version pour avoir une idée de toutes les nouvelles fonctionnalités/améliorations apportées à cette version.

Modifications avec rupture

Nouvelle version de l’API

Introduction de la version API V2 dans la version 19.5, la V1 restera disponible.

Authentification

L’authentification JWT (JSON Web Token) est introduite dans cette version, les méthodes d’authentification OAuth2 et de signature d’URL sont maintenant obsolètes.

API d’annotation

Méthodes API simplifiées pour appliquer des annotations textuelles et graphiques aux documents et images de tous les formats courants.

API de stockage

API de fichier – Méthodes introduites pour télécharger, télécharger, copier, déplacer, supprimer des fichiers : documents d’entrée et résultats de rendu, dans le stockage en nuage

API de dossier - Méthodes introduites pour créer, copier, déplacer, supprimer des dossiers dans le stockage en nuage

API de stockage – Méthodes introduites pour obtenir des informations sur le stockage et les informations sur les fichiers

Ajouter des annotations au document

Ici, nous allons vous montrer comment la version de l’API GroupDocs.Annotation Cloud V2 fonctionne et est différente de la V1. Nous allons ajouter une annotation dans un document Word à l’aide du SDK GroupDocs.Annotation Cloud pour .NET en suivant ces étapes :

  • Charger le document source dans le stockage
  • Ajouter une annotation au document source

Nous devons télécharger le document source sur le stockage Cloud, car dans cet exemple, nous traiterons le document à partir du stockage Cloud. Dans la version, nous avons introduit l’API de fichier pour les opérations de stockage de fichiers. Nous utiliserons la méthode UploadFile de la version de l’API Annotation V2 au lieu de la méthode de l’API GroupDocs.Storage Cloud pour télécharger le fichier vers le stockage.

using System;
using System.IO;
using GroupDocs.Annotation.Cloud.Sdk.Api;
using GroupDocs.Annotation.Cloud.Sdk.Client;
using GroupDocs.Annotation.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Annotation.Cloud.Examples.CSharp
{
	// Téléverser un fichier
	class Upload_File
	{
		public static void Run()
		{
			var configuration = new Configuration(Common.MyAppSid, Common.MyAppKey);
			var apiInstance = new FileApi(configuration);

			try
			{
				// Ouvrez le fichier dans IOStream à partir de local/disque.
				var fileStream = File.Open("..\\..\\..\\Data\\Annotationdocs\\one-page.docx", FileMode.Open);

				var request = new UploadFileRequest("Annotationdocs/one-page1.docx", fileStream, Common.MyStorage);

				var response = apiInstance.UploadFile(request);
				Console.WriteLine("Expected response type is FilesUploadResult: " + response.Uploaded.Count.ToString());
			}
			catch (Exception e)
			{
				Console.WriteLine("Exception while calling FileApi: " + e.Message);
			}
		}
	}
}

Dans la version 19.5, la méthode PUT pour l’importation d’annotations a été remplacée par la méthode POST, comme illustré dans l’exemple de code suivant.

V1.1 Exemple

//À FAIRE : Obtenez votre AppSID et AppKey sur https://dashboard.groupdocs.cloud (une inscription gratuite est requise).
var configuration = new Configuration
{
    AppSid = Sid,
    AppKey = Key
};

var apiInstance = new AnnotationApi(configuration);


try
{
    List<AnnotationInfo> annotations = new List<AnnotationInfo>();
    AnnotationInfo annotation = new AnnotationInfo
    {
        AnnotationPosition = new Point(852, 154.31),
        Replies = new[]
        {
                      new AnnotationReplyInfo {Message = "reply text", RepliedOn = DateTime.Now, UserName = "Admin"},
                      new AnnotationReplyInfo
                      {
                          Message = "reply2 text",
                          RepliedOn = DateTime.Now,
                          UserName = "Commentator"
                      }
                  },
        Box = new Rectangle((float)173.29, (float)154.31, (float)142.5, 9),
        PageNumber = 0,
        SvgPath =
            "[{\"x\":173.2986,\"y\":687.5769},{\"x\":315.7985,\"y\":687.5769},{\"x\":173.2986,\"y\":678.5769},{\"x\":315.7985,\"y\":678.5769}]",
        Type = AnnotationType.Text,
        CreatorName = "Anonym A."
    };
    annotations.Add(annotation);
    PutExportRequest request = new PutExportRequest()
    {
        Name ="Annotated.pdf",
        Folder=null,
        Password=null,
        Body=annotations,
        
    };
    // Insérer/Exporter des annotations dans le document.
    var response = apiInstance.PutExport(request);
    Debug.Print("Document Processsed and stream length: " + response.Length);

}
catch (Exception e)
{
    Debug.Print("Exception when inserting Annotation to document: " + e.Message);
}

Exemple V2.0

using System;
using GroupDocs.Annotation.Cloud.Sdk.Api;
using GroupDocs.Annotation.Cloud.Sdk.Client;
using GroupDocs.Annotation.Cloud.Sdk.Model;
using GroupDocs.Annotation.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Annotation.Cloud.Examples.CSharp
{
	// Publier/Ajouter des annotations
	class Add_Annotation
	{
		public static void Run()
		{
			var configuration = new Configuration(Common.MyAppSid, Common.MyAppKey);
			var apiInstance = new AnnotateApi(configuration);

			try
			{
				// Définir la demande.
				var request = new PostAnnotationsRequest()
				{
					filePath = "Annotationdocs\\ten-pages.docx",
					annotations = new System.Collections.Generic.List<AnnotationInfo>() {
						new AnnotationInfo
						{
							AnnotationPosition = new Point { X = 852, Y = 59.388262910798119 },
							Box = new Rectangle { X = 375.89276123046875, Y = 59.388263702392578, Width = 88.7330551147461, Height = 37.7290153503418 },
							PageNumber = 0,
							PenColor = 1201033,
							PenStyle = 0,
							PenWidth = 1,
							Type = AnnotationInfo.TypeEnum.Area,
							CreatorName = "Anonym A."
						}
					}
				};
				apiInstance.PostAnnotations(request);
				Console.WriteLine("Expected response type is void: Annotation added.");
			}
			catch (Exception e)
			{
				Console.WriteLine("Exception while calling Annotation AnnotateApi: " + e.Message);
			}
		}
	}
}

Partagez vos commentaires

Vos commentaires sont importants ! N’hésitez pas à nous envoyer un commentaire pour nous faire part de vos réflexions sur la nouvelle version de l’API REST GroupDocs.Annotation Cloud. Cela nous aide à améliorer et à affiner continuellement notre API.