Handwriting to Text API

Transform Handwritten Notes into Digital Text with Our Advanced AI-Powered OCR API.

hero banner

Code Examples in Popular Languages

Integrate our Handwriting to Text API easily into your apps with comprehensive code examples in popular languages to get started quickly.

CURL Request
curl --location 'https://theonlineconverter.com/api/v1/handwriting-to-text' \
--header 'Content-Type: application/json' \
--header 'x-api-key: enter_your_api_key' \
--form 'file=@"/D:/data/Images/png/image.png"'
JavaScript Fetch
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("x-api-key", "enter_your_api_key");

const formdata = new FormData();
formdata.append("file", fileInput.files[0], "/D:/data/Images/png/image.png");

const requestOptions = {
  method: "POST",
  headers: myHeaders,
  body: formdata,
  redirect: "follow"
};

fetch("https://theonlineconverter.com/api/v1/handwriting-to-text", requestOptions)
  .then((response) => response.text())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));
Ruby Net::HTTP
import requests
import json

url = "https://theonlineconverter.com/api/v1/handwriting-to-text"

payload = {}
files=[
  ('file',('image.png',open('/D:/data/Images/png/image.png','rb'),'image/png'))
]
headers = {
  'Content-Type': 'application/json',
  'x-api-key': 'enter_your_api_key'
}

response = requests.request("POST", url, headers=headers, data=payload, files=files)

print(response.text)
Python Requests
import requests
import json

url = "https://theonlineconverter.com/api/v1/handwriting-to-text"

payload = {}
files=[
  ('file',('image.png',open('/D:/data/Images/png/image.png','rb'),'image/png'))
]
headers = {
  'Content-Type': 'application/json',
  'x-api-key': 'enter_your_api_key'
}

response = requests.request("POST", url, headers=headers, data=payload, files=files)

print(response.text)
PHP Guzzle
<?php
$client = new Client();
$headers = [
  'Content-Type' => 'application/json',
  'x-api-key' => 'enter_your_api_key'
];
$options = [
  'multipart' => [
    [
      'name' => 'file',
      'contents' => Utils::tryFopen('/D:/data/Images/png/image.png', 'r'),
      'filename' => '/D:/data/Images/png/image.png',
      'headers'  => [
        'Content-Type' => '<Content-type header>'
      ]
    ]
]];
$request = new Request('POST', 'https://theonlineconverter.com/api/v1/handwriting-to-text', $headers);
$res = $client->sendAsync($request, $options)->wait();
echo $res->getBody();
Java HttpURLConnection
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
  .addFormDataPart("file","/D:/data/Images/png/image.png",
    RequestBody.create(MediaType.parse("application/octet-stream"),
    new File("/D:/data/Images/png/image.png")))
  .build();
Request request = new Request.Builder()
  .url("https://theonlineconverter.com/api/v1/handwriting-to-text")
  .method("POST", body)
  .addHeader("Content-Type", "application/json")
  .addHeader("x-api-key", "enter_your_api_key")
  .build();
Response response = client.newCall(request).execute();
Go net/http
package main

import (
  "fmt"
  "bytes"
  "mime/multipart"
  "os"
  "path/filepath"
  "net/http"
  "io"
)

func main() {

  url := "https://theonlineconverter.com/api/v1/handwriting-to-text"
  method := "POST"

  payload := &bytes.Buffer{}
  writer := multipart.NewWriter(payload)
  file, errFile1 := os.Open("/D:/data/Images/png/image.png")
  defer file.Close()
  part1,
         errFile1 := writer.CreateFormFile("file",filepath.Base("/D:/data/Images/png/image.png"))
  _, errFile1 = io.Copy(part1, file)
  if errFile1 != nil {
    fmt.Println(errFile1)
    return
  }
  err := writer.Close()
  if err != nil {
    fmt.Println(err)
    return
  }


  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("x-api-key", "enter_your_api_key")

  req.Header.Set("Content-Type", writer.FormDataContentType())
  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := io.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
C# HttpClient
var options = new RestClientOptions("https://theonlineconverter.com")
{
  MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("/api/v1/handwriting-to-text", Method.Post);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("x-api-key", "enter_your_api_key");
request.AlwaysMultipartFormData = true;
request.AddFile("file", "/D:/data/Images/png/image.png");
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);

Key Features & Capabilities

Our AI-driven API provides robust features for precise and adaptable handwriting to text conversion.

Simple User Interface

AI-Powered Recognition

Utilize state-of-the-art AI and deep learning models specifically trained to interpret and accurately convert various handwritten styles into digital text.

Simple Data Format

Exceptional Accuracy

Achieve industry-leading accuracy for both cursive and print handwriting, even with variations in slant, size, and ink types, thanks to sophisticated AI algorithms.

Time

Multi-Language Support

Our AI models are trained on diverse datasets, enabling reliable handwriting recognition across a wide range of languages to support global applications.

Secure Data

Fast & Scalable Processing

Experience rapid conversion speeds, powered by optimized AI inference, allowing you to process single images or large batches of handwritten documents efficiently.

Universal Access

Structured Text Output

Receive extracted text in clean, editable formats. Choose between plain text or structured JSON, including bounding box data for detailed analysis and positioning.

Freedom

Secure Data Handling

Trust in our secure infrastructure and strict data privacy protocols. Your sensitive handwritten data is processed and handled with the utmost confidentiality.

Frequently Asked Questions

Discover more about our Handwriting to Text Converter API with answers to common questions.

We utilize advanced Artificial Intelligence and deep learning neural networks specifically trained on vast datasets of diverse handwritten samples, enabling our models to learn and adapt to various styles and complexities.

Yes, our AI models are designed to recognize and convert both block print and cursive handwriting styles with impressive accuracy.

Our AI models support a broad spectrum of languages. You can specify the language in your API request to optimize recognition for specific scripts.

Yes, you can submit multi-page documents (e.g., as a PDF) or individual image files, and our API can process them sequentially or in batches.

Data security is paramount. All uploaded images are processed over secure connections and handled with strict confidentiality. Files are temporarily stored for processing and then securely deleted according to our privacy policy.

The API returns the extracted text in a clean, editable format. You can also request a JSON output which includes additional metadata like bounding box coordinates for each recognized word or line.

Absolutely. Our AI's ability to handle variations in script, age of documents, and potential degradation makes it an excellent tool for digitizing historical manuscripts and archival content.