快速开始

介绍

FastOCR 提供简单易用的 RESTful API 接口,让您能够快速集成 OCR 文字识别功能到您的应用程序中。 本文档将帮助您快速了解如何使用我们的 API。

API 接口

POST https://api.fastocr.icu/ocr

请求参数

参数名类型必填说明
fileFile要识别的图片文件(支持 JPG、PNG、BMP 等格式)

代码示例

JavaScript (Fetch API)

const formData = new FormData();
formData.append('file', fileInput.files[0]);

fetch('https://api.fastocr.icu/ocr', {
  method: 'POST',
  body: formData
})
  .then(response => response.json())
  .then(data => {
    console.log('识别结果:', data);
  })
  .catch(error => {
    console.error('错误:', error);
  });

Python (Requests)

import requests

url = 'https://api.fastocr.icu/ocr'
files = {'file': open('image.jpg', 'rb')}

response = requests.post(url, files=files)
result = response.json()

print('识别结果:', result)

cURL

curl -X POST https://api.fastocr.icu/ocr \
  -F "file=@/path/to/image.jpg"

Node.js (Axios)

const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');

const formData = new FormData();
formData.append('file', fs.createReadStream('image.jpg'));

axios.post('https://api.fastocr.icu/ocr', formData, {
  headers: formData.getHeaders()
})
  .then(response => {
    console.log('识别结果:', response.data);
  })
  .catch(error => {
    console.error('错误:', error);
  });

响应格式

API 返回 JSON 格式的数据,包含识别出的文字信息和位置坐标。

{
  "words": [
    {
      "text": "识别出的文字内容",
      "left": 53.90625,
      "top": 79.6875,
      "right": 508.59375,
      "bottom": 171.09375,
      "rate": 0.9983862042427063
    },
    {
      "text": "第二行文字",
      "left": 56.25,
      "top": 227.34375,
      "right": 649.2186889648438,
      "bottom": 288.28125,
      "rate": 0.9859622716903687
    }
  ]
}

字段说明

字段名类型说明
wordsArray识别结果数组,每个元素包含一段文字及其位置信息
textString识别出的文字内容
left, top, right, bottomNumber文字在图片中的边界框坐标(像素)
rateNumber识别置信度(0-1之间,越接近1表示识别越准确)

错误处理

API 使用标准 HTTP 状态码表示请求结果:

状态码说明
200请求成功,返回识别结果
422请求参数错误(如未上传文件、文件格式不支持等)
500服务器内部错误

错误处理示例:

const response = await fetch('https://api.fastocr.icu/ocr', {
  method: 'POST',
  body: formData
});

if (!response.ok) {
  // 根据状态码处理错误
  if (response.status === 422) {
    console.error('请求参数错误,请检查上传的文件');
  } else if (response.status === 500) {
    console.error('服务器错误,请稍后重试');
  }
  throw new Error(`请求失败: ${response.status}`);
}

const data = await response.json();

最佳实践

  • 上传清晰、光线充足的图片以获得更好的识别效果
  • 建议图片分辨率在 1000x1000 像素以上
  • 图片中的文字应尽量保持水平,避免倾斜
  • 单次上传图片大小建议不超过 10MB
  • 实现适当的错误处理和重试机制

需要帮助?

如果您在使用过程中遇到任何问题,请访问我们的帮助中心联系我们