Świetna wiadomość dla deweloperów! Wprowadzono całkowicie nowy GroupDocs.Annotation Cloud 19.5. Dokładamy wszelkich starań, aby ulepszać GroupDocs.Annotation Cloud REST API, aby uczynić go bardziej uproszczonym i łatwym w użyciu. Mając to na uwadze, dokonaliśmy niezbędnych zmian w tej wersji. Nowy interfejs API jest bardziej zoptymalizowany z mniejszą liczbą metod i opcji. Jego wewnętrzna architektura została przeprojektowana w celu szybkiego i niezawodnego przetwarzania w celu tworzenia narzędzi do adnotacji dokumentów i obrazów z obsługą operacji adnotacji opartych na tekście i rysunkach. Również teraz API zawiera metody pracy z pamięcią masową w chmurze. Możesz więc wykonywać operacje przechowywania bezpośrednio przy użyciu interfejsu API GroupDocs.Annotation Cloud REST zamiast korzystania z oddzielnego interfejsu API.

Sprawdź szczegółowe informacje o wydaniu tej wersji, aby dowiedzieć się o wszystkich nowych funkcjach/ulepszeniach wprowadzonych w tej wersji.

Przełomowe zmiany

Nowa wersja API

Wprowadzona wersja API V2 w wersji 19.5, V1 pozostanie dostępna.

Uwierzytelnianie

Uwierzytelnianie JWT (JSON Web Token) zostało wprowadzone w tej wersji, teraz metody uwierzytelniania OAuth2 i podpisywania adresów URL są już przestarzałe.

Interfejs API adnotacji

Uproszczone metody API do stosowania adnotacji opartych na tekście i rysunkach do dokumentów i obrazów we wszystkich popularnych formatach.

Interfejsy API magazynu

File API – Wprowadzono metody wysyłania, pobierania, kopiowania, przenoszenia, usuwania plików: dokumenty wejściowe i wyniki renderowania w chmurze

Folder API — Wprowadzono metody tworzenia, kopiowania, przenoszenia i usuwania folderów w chmurze

Storage API — Wprowadzono metody uzyskiwania informacji o pamięci i plikach

Dodaj adnotacje do dokumentu

Tutaj pokażemy Ci, jak działa wersja API GroupDocs.Annotation Cloud V2 i różni się ona od wersji V1. Dodamy adnotację do dokumentu programu Word za pomocą GroupDocs.Annotation Cloud SDK for .NET, wykonując następujące kroki:

  • Prześlij dokument źródłowy do magazynu
  • Dodaj adnotację do dokumentu źródłowego

Musimy przesłać dokument źródłowy do magazynu w chmurze, ponieważ w tym przykładzie będziemy przetwarzać dokument z magazynu w chmurze. W wydaniu wprowadziliśmy File API do operacji przechowywania plików. Użyjemy metody UploadFile wersji Annotation V2 API zamiast metody GroupDocs.Storage Cloud API, aby przesłać plik do magazynu.

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
{
	// Przesyłanie pliku
	class Upload_File
	{
		public static void Run()
		{
			var configuration = new Configuration(Common.MyAppSid, Common.MyAppKey);
			var apiInstance = new FileApi(configuration);

			try
			{
				// Otwórz plik w IOStream z pliku local/disc.
				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);
			}
		}
	}
}

W wersji 19.5 metoda PUT importu adnotacji została zmieniona na metodę POST, jak pokazano w poniższym przykładowym kodzie.

V1.1 Przykład

//DO ZROBIENIA: Uzyskaj identyfikator AppSID i klucz AppKey na stronie https://dashboard.groupdocs.cloud (wymagana jest bezpłatna rejestracja).
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,
        
    };
    // Wstaw/eksportuj adnotacje do dokumentu.
    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);
}

Wersja 2.0 Przykład

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
{
	// Opublikuj/Dodaj adnotacje
	class Add_Annotation
	{
		public static void Run()
		{
			var configuration = new Configuration(Common.MyAppSid, Common.MyAppKey);
			var apiInstance = new AnnotateApi(configuration);

			try
			{
				// Ustaw żądanie.
				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);
			}
		}
	}
}

Podziel się swoją opinią

Twoja opinia jest ważna! Zachęcamy do podzielenia się z nami komentarz swoimi przemyśleniami na temat nowej wersji interfejsu GroupDocs.Annotation Cloud REST API. Pomaga nam to w ciągłym ulepszaniu i udoskonalaniu naszego interfejsu API.