Vision API 可以检测并转录 Cloud Storage 中存储的 PDF 和 TIFF 文件中的文本。
必须使用 files:asyncBatchAnnotate 函数请求对 PDF 和 TIFF 执行文档文本检测;该函数将执行离线(异步)请求并通过 operations 资源提供其状态。
PDF/TIFF 请求的输出会写入在指定的 Cloud Storage 存储桶中创建的 JSON 文件。
限制
Vision API 可接受最多 2,000 页的 PDF/TIFF 文件。如果文件包含更多页面,则会返回错误。
身份验证
files:asyncBatchAnnotate 请求不支持 API 密钥。如需了解如何使用服务账号进行身份验证,请参阅使用服务账号。
用于进行身份验证的账号必须能够访问您为输出指定的 Cloud Storage 存储桶(roles/editor、roles/storage.objectCreator 或权限更高的角色)。
您可以使用 API 密钥来查询该操作的状态;如需查看相关说明,请参阅使用 API 密钥。
文档文本检测请求
目前,PDF/TIFF 文档检测仅适用于存储在 Cloud Storage 存储分区中的文件。响应 JSON 文件同样会保存到 Cloud Storage 存储桶。

gs://cloud-samples-data/vision/pdf_tiff/census2010.pdf,来源:美国人口普查局。
REST
在使用任何请求数据之前,请先进行以下替换:
- CLOUD_STORAGE_BUCKET:用于保存输出文件的 Cloud Storage 存储桶/目录,采用以下格式表示:
gs://bucket/directory/
- CLOUD_STORAGE_FILE_URI:Cloud Storage 存储桶中有效文件 (PDF/TIFF) 的路径。您必须至少拥有该文件的读取权限。
示例:
gs://cloud-samples-data/vision/pdf_tiff/census2010.pdf
- FEATURE_TYPE:有效的特征类型。
对于
files:asyncBatchAnnotate请求,您可以使用以下特征类型:DOCUMENT_TEXT_DETECTIONTEXT_DETECTION
- PROJECT_ID:您的 Google Cloud 项目 ID。
特定于字段的注意事项:
inputConfig- 用于替换其他 Vision API 请求中所用的image字段。它包含两个子字段:gcsSource.uri- PDF 或 TIFF 文件的 Google Cloud Storage URI(可供发出请求的用户或服务账号访问)。mimeType- 接受的文件类型之一:application/pdf或image/tiff。
outputConfig- 指定输出详细信息。它包含两个子字段:gcsDestination.uri- 有效的 Google Cloud Storage URI。该存储桶必须可供发出请求的用户或服务账号写入。文件名为output-x-to-y,其中x和y表示包含在该输出文件中的 PDF/TIFF 页码。如果该文件已存在,其内容将被覆盖。batchSize- 指定每个输出 JSON 文件中应包含多少页输出。
HTTP 方法和网址:
POST https://vision.googleapis.com/v1/files:asyncBatchAnnotate
请求 JSON 正文:
{
"requests":[
{
"inputConfig": {
"gcsSource": {
"uri": "CLOUD_STORAGE_FILE_URI"
},
"mimeType": "application/pdf"
},
"features": [
{
"type": "FEATURE_TYPE"
}
],
"outputConfig": {
"gcsDestination": {
"uri": "CLOUD_STORAGE_BUCKET"
},
"batchSize": 1
}
}
]
}
如需发送请求,请选择以下方式之一: