Skip to content

Commit 40e84fd

Browse files
committed
README file corrected
1 parent 78ca545 commit 40e84fd

File tree

1 file changed

+35
-35
lines changed

1 file changed

+35
-35
lines changed

README.md

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,58 @@
1-
Aspose.Email Cloud is a REST API for creating email applications that work with common email file formats. This SDK:
2-
- Lets developers manipulate formats related to emailing such as Outlook MSG, EML, VCard and iCalendar files
3-
- Has built-in email client
1+
Aspose.Email Cloud is a REST API for creating email applications that work with standard email file formats. This SDK:
2+
- Lets developers manipulate different emails’ formats such as Outlook MSG, EML, VCard, and iCalendar files
3+
- Has a built-in email client
44
- Supports AI functionalities:
5-
- Business card recognition
6-
- Name API for parsing and handling personal names
5+
- The Business card recognition
6+
- The Name API for parsing and handling personal names
77

8-
To use this SDK, you will need App SID and App Key which can be looked up at [Aspose Cloud Dashboard](https://dashboard.aspose.cloud/#/apps) (free registration in Aspose Cloud is required for this).
8+
To use this SDK, you need an App SID and an App Key; they can be looked up at [Aspose Cloud Dashboard](https://dashboard.aspose.cloud/#/apps) (it requires free registration in Aspose Cloud for this).
99

1010
## How to use the SDK?
1111
The complete source code is available in the GIT repository.
12-
Use reference documentation available [**here**](docs/README.md)
12+
Use reference documentation, available [**here**](docs/README.md)
1313

1414
### Usage examples
15-
To use API you should create EmailApi object:
15+
To use the API, you should create an EmailApi object:
1616
```csharp
1717
using Aspose.Email.Cloud.Sdk.Api; //EmailApi class is here
18-
using Aspose.Email.Cloud.Sdk.Model; //REST API models here
19-
using Aspose.Email.Cloud.Sdk.Model.Requests; //Request models here (all API calls use corresponding request model class)
18+
using Aspose.Email.Cloud.Sdk.Model; //REST API models are here
19+
using Aspose.Email.Cloud.Sdk.Model.Requests; //Request models are here (all API calls use corresponding request model class)
2020
2121
...
2222
var appKey = "Your App Key";
2323
var appSid = "Your App SID";
2424
var emailApi = new EmailApi(appKey, appSid);
2525
```
2626

27-
API calls could be synchronous or asynchronous (if supported by framework):
27+
API calls can be synchronous or asynchronous (if it's supported by the framework):
2828
```csharp
2929
var result = emailApi.GetCalendar(new GetCalendarRequest(calendarFile, folder, StorageName));
3030
// or
3131
var result = await emailApi.GetCalendarAsync(new GetCalendarRequest(calendarFile, folder, StorageName));
3232
```
3333

34-
#### Business card recognition API
34+
#### Business cards recognition API
3535
See examples below:
3636

3737
<details open>
3838
<summary>Parse business card images to VCard contact files</summary>
3939

4040
```csharp
41-
// Upload business card image to storage
41+
// Upload a business card image to storage
4242
var storageName = "First Storage"; //Your storage name
43-
var imageFileName = "someFileName.png"; //Different image formats are supported (PNG, JPEG, BMP, TIFF, GIF...)
43+
var imageFileName = "someFileName.png"; //Supports different image formats: PNG, JPEG, BMP, TIFF, GIF, etc.
4444
using (var stream = File.OpenRead("some/business/card/image/file/on/disk"))
4545
{
4646
await emailApi.UploadFileAsync(new UploadFileRequest(imageFileName, stream, storageName));
4747
}
4848

49-
var outFolder = "some/folder/on/storage"; //Business card recognition results will be placed here
49+
var outFolder = "some/folder/on/storage"; //Business card recognition results will be saved here
5050
await emailApi.CreateFolderAsync(new CreateFolderRequest(outFolder, storageName));
5151
// Call business card recognition action
5252
var result = await emailApi.AiBcrParseStorageAsync(new AiBcrParseStorageRequest(
5353
new AiBcrParseStorageRq
5454
{
55-
Images = new List<AiBcrImageStorageFile> //We can process multiple images in just one request
55+
Images = new List<AiBcrImageStorageFile> //We can process multiple images in one request
5656
{
5757
new AiBcrImageStorageFile
5858
{
@@ -62,7 +62,7 @@ var result = await emailApi.AiBcrParseStorageAsync(new AiBcrParseStorageRequest(
6262
FileName = imageFileName,
6363
FolderPath = string.Empty //image was uploaded to the root directory of storage
6464
},
65-
IsSingle = true //image contains only one business card (you can upload image with multiple cards on it)
65+
IsSingle = true //the image contains only one business card (you can upload image with multiple cards on it)
6666
}
6767
},
6868
OutFolder = new StorageFolderLocation
@@ -71,23 +71,23 @@ var result = await emailApi.AiBcrParseStorageAsync(new AiBcrParseStorageRequest(
7171
FolderPath = outFolder
7272
}
7373
}));
74-
// Get file name from recognition result
74+
// Get file name from a recognition result
7575
var contactFile = result.Value.First(); //result.Value can contain multiple files, if we sent multicard images or multiple images
7676
77-
// You can download VCard file, produced by recognition method ...
77+
// You can download the VCard file, which produced by the recognition method ...
7878
using (var contactFileStream = await emailApi.DownloadFileAsync(new DownloadFileRequest(
7979
$"{contactFile.FolderPath}/{contactFile.FileName}", contactFile.Storage)))
80-
//... and save it to a "contact.vcf" file
80+
//... and save it to the "contact.vcf" file
8181
using (var fileStream = File.Create("path/to/contact.vcf"))
8282
{
8383
contactFileStream.CopyTo(fileStream);
8484
}
8585

86-
// Or get VCard object properties list using Contact API
86+
// Also, you can get VCard object properties list using Contact API
8787
var contactProperties = await emailApi.GetContactPropertiesAsync(new GetContactPropertiesRequest(
8888
"vcard", contactFile.FileName, contactFile.FolderPath, contactFile.Storage));
89-
//All VCard properties available as a list. Complex properties represented as hierarchical structures.
90-
//Let's print all primitive property values:
89+
//All VCard’s properties are available as a list. Complex properties are represented as hierarchical structures.
90+
//Let's print all primitive properties’ values:
9191
var primitiveProperties = contactProperties.InternalProperties
9292
.Where(property => property is PrimitiveObject)
9393
.Select(property => property as PrimitiveObject)
@@ -101,7 +101,7 @@ foreach(var primitiveProperty in primitiveProperties)
101101

102102

103103
<details>
104-
<summary>Parse images directly, without use of storage</summary>
104+
<summary>Parse images directly, without the using of a storage</summary>
105105

106106
```csharp
107107
//Read image from file and convert it to Base64 string
@@ -120,10 +120,10 @@ var result = await emailApi.AiBcrParseAsync(
120120
}
121121
}
122122
}));
123-
//Result contains all recognized VCard objects (only one in our case)
123+
//Result contains all recognized VCard objects (only the one in our case)
124124
var contactProperties = result.Value.First();
125125

126-
//VCard object is available as list of properties, without any external calls:
126+
//VCard object is available as a list of properties, without any external calls:
127127
var primitiveProperties = contactProperties.InternalProperties
128128
.Where(property => property is PrimitiveObject)
129129
.Select(property => property as PrimitiveObject)
@@ -138,14 +138,14 @@ foreach(var primitiveProperty in primitiveProperties)
138138
#### Name API
139139
See examples below:
140140
<details open>
141-
<summary>Detect person's gender by name</summary>
141+
<summary>Detect a person's gender by name</summary>
142142

143143
```csharp
144144
var name = "John Cane";
145145
var result = await emailApi.AiNameGenderizeAsync(
146146
new AiNameGenderizeRequest(name));
147-
//result contains list of hypothesis about person's gender.
148-
//all hypothesis include score, so you can use most scored version, which will be first in list:
147+
//the result contains a list of hypothesis about a person's gender.
148+
//all hypothesis include score, so you can use the most scored version, which will be the first in a list:
149149
System.Console.WriteLine(result.Value.First().Gender); //prints "Male"
150150
```
151151
</details>
@@ -163,7 +163,7 @@ System.Console.WriteLine(result.Name); //prints "Mr. Cane J. M."
163163
</details>
164164

165165
<details>
166-
<summary>Compare names to detect that they related to same person or not</summary>
166+
<summary>Compare the names to find out if they belong to the same person or not</summary>
167167

168168
```csharp
169169
const string first = "John Michael Cane";
@@ -205,13 +205,13 @@ var names = result.Names
205205
.ToList();
206206
foreach(var name in names)
207207
{
208-
System.Console.WriteLine(name); //prints David", "Dave", "Davis", etc.
208+
System.Console.WriteLine(name); //prints "David", "Dave", "Davis", etc.
209209
}
210210
```
211211
</details>
212212

213213
<details>
214-
<summary>Parse the person's name out of an email address.</summary>
214+
<summary>Parse out a person's name from an email address.</summary>
215215

216216
```csharp
217217
const string address = "john-cane@gmail.com";
@@ -229,16 +229,16 @@ System.Console.WriteLine(surName.Value); // "Cane"
229229
</details>
230230

231231
### Install Aspose.Email for Cloud via NuGet
232-
You can either directly use it in your project via source code or get [NuGet Package](https://www.nuget.org/packages/Aspose.Email-Cloud/).
233-
From Package Manager:
232+
You can use it directly in your project via the source code or get a [NuGet Package](https://www.nuget.org/packages/Aspose.Email-Cloud/).
233+
From the Package Manager:
234234

235235
`PM> Install-Package Aspose.Email-Cloud`
236236

237237
Using .NET CLI:
238238

239239
`dotnet add package Aspose.Email-Cloud`
240240

241-
Or as Package reference:
241+
Or as a Package reference:
242242

243243
`<PackageReference Include="Aspose.Email-Cloud"/>`
244244

0 commit comments

Comments
 (0)