| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="documentai_v1beta2.html">Cloud Document AI API</a> . <a href="documentai_v1beta2.projects.html">projects</a> . <a href="documentai_v1beta2.projects.documents.html">documents</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="#batchProcess">batchProcess(parent, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">LRO endpoint to batch process many documents. The output is written</p> |
| <p class="toc_element"> |
| <code><a href="#process">process(parent, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Processes a single document.</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="batchProcess">batchProcess(parent, body=None, x__xgafv=None)</code> |
| <pre>LRO endpoint to batch process many documents. The output is written |
| to Cloud Storage as JSON in the [Document] format. |
| |
| Args: |
| parent: string, Target project and location to make a call. |
| |
| Format: `projects/{project-id}/locations/{location-id}`. |
| |
| If no location is specified, a region will be chosen automatically. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # Request to batch process documents as an asynchronous operation. The output |
| # is written to Cloud Storage as JSON in the [Document] format. |
| "requests": [ # Required. Individual requests for each document. |
| { # Request to process one document. |
| "ocrParams": { # Parameters to control Optical Character Recognition (OCR) behavior. # Controls OCR behavior. If not specified, the system will decide reasonable |
| # defaults. |
| "languageHints": [ # List of languages to use for OCR. In most cases, an empty value |
| # yields the best results since it enables automatic language detection. For |
| # languages based on the Latin alphabet, setting `language_hints` is not |
| # needed. In rare cases, when the language of the text in the image is known, |
| # setting a hint will help get better results (although it will be a |
| # significant hindrance if the hint is wrong). Document processing returns an |
| # error if one or more of the specified languages is not one of the |
| # supported languages. |
| "A String", |
| ], |
| }, |
| "tableExtractionParams": { # Parameters to control table extraction behavior. # Controls table extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "tableBoundHints": [ # Optional. Table bounding box hints that can be provided to complex cases |
| # which our algorithm cannot locate the table(s) in. |
| { # A hint for a table bounding box on the page for table parsing. |
| "pageNumber": 42, # Optional. Page number for multi-paged inputs this hint applies to. If not |
| # provided, this hint will apply to all pages by default. This value is |
| # 1-based. |
| "boundingBox": { # A bounding polygon for the detected image annotation. # Bounding box hint for a table on this page. The coordinates must be |
| # normalized to [0,1] and the bounding box must be an axis-aligned rectangle. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| }, |
| ], |
| "headerHints": [ # Optional. Reserved for future use. |
| "A String", |
| ], |
| "modelVersion": "A String", # Model version of the table extraction system. Default is "builtin/stable". |
| # Specify "builtin/latest" for the latest model. |
| "enabled": True or False, # Whether to enable table extraction. |
| }, |
| "automlParams": { # Parameters to control AutoML model prediction behavior. # Controls AutoML model prediction behavior. AutoMlParams cannot be used |
| # together with other Params. |
| "model": "A String", # Resource name of the AutoML model. |
| # |
| # Format: `projects/{project-id}/locations/{location-id}/models/{model-id}`. |
| }, |
| "inputConfig": { # The desired input location and metadata. # Required. Information about the input file. |
| "gcsSource": { # The Google Cloud Storage location where the input file will be read from. # The Google Cloud Storage location to read the input from. This must be a |
| # single file. |
| "uri": "A String", |
| }, |
| "contents": "A String", # Content in bytes, represented as a stream of bytes. |
| # Note: As with all `bytes` fields, proto buffer messages use a pure binary |
| # representation, whereas JSON representations use base64. |
| # |
| # This field only works for synchronous ProcessDocument method. |
| "mimeType": "A String", # Required. Mimetype of the input. Current supported mimetypes are application/pdf, |
| # image/tiff, and image/gif. |
| # In addition, application/json type is supported for requests with |
| # ProcessDocumentRequest.automl_params field set. The JSON file needs to |
| # be in Document format. |
| }, |
| "formExtractionParams": { # Parameters to control form extraction behavior. # Controls form extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "modelVersion": "A String", # Model version of the form extraction system. Default is |
| # "builtin/stable". Specify "builtin/latest" for the latest model. |
| # For custom form models, specify: “custom/{model_name}". Model name |
| # format is "bucket_name/path/to/modeldir" corresponding to |
| # "gs://bucket_name/path/to/modeldir" where annotated examples are stored. |
| "enabled": True or False, # Whether to enable form extraction. |
| "keyValuePairHints": [ # Reserved for future use. |
| { # Reserved for future use. |
| "valueTypes": [ # Type of the value. This is case-insensitive, and could be one of: |
| # ADDRESS, LOCATION, ORGANIZATION, PERSON, PHONE_NUMBER, |
| # ID, NUMBER, EMAIL, PRICE, TERMS, DATE, NAME. Types not in this list will |
| # be ignored. |
| "A String", |
| ], |
| "key": "A String", # The key text for the hint. |
| }, |
| ], |
| }, |
| "documentType": "A String", # Specifies a known document type for deeper structure detection. Valid |
| # values are currently "general" and "invoice". If not provided, "general"\ |
| # is used as default. If any other value is given, the request is rejected. |
| "parent": "A String", # Target project and location to make a call. |
| # |
| # Format: `projects/{project-id}/locations/{location-id}`. |
| # |
| # If no location is specified, a region will be chosen automatically. |
| # This field is only populated when used in ProcessDocument method. |
| "outputConfig": { # The desired output location and metadata. # The desired output location. This field is only needed in |
| # BatchProcessDocumentsRequest. |
| "pagesPerShard": 42, # The max number of pages to include into each output Document shard JSON on |
| # Google Cloud Storage. |
| # |
| # The valid range is [1, 100]. If not specified, the default value is 20. |
| # |
| # For example, for one pdf file with 100 pages, 100 parsed pages will be |
| # produced. If `pages_per_shard` = 20, then 5 Document shard JSON files each |
| # containing 20 parsed pages will be written under the prefix |
| # OutputConfig.gcs_destination.uri and suffix pages-x-to-y.json where |
| # x and y are 1-indexed page numbers. |
| # |
| # Example GCS outputs with 157 pages and pages_per_shard = 50: |
| # |
| # <prefix>pages-001-to-050.json |
| # <prefix>pages-051-to-100.json |
| # <prefix>pages-101-to-150.json |
| # <prefix>pages-151-to-157.json |
| "gcsDestination": { # The Google Cloud Storage location where the output file will be written to. # The Google Cloud Storage location to write the output to. |
| "uri": "A String", |
| }, |
| }, |
| "entityExtractionParams": { # Parameters to control entity extraction behavior. # Controls entity extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "enabled": True or False, # Whether to enable entity extraction. |
| "modelVersion": "A String", # Model version of the entity extraction. Default is |
| # "builtin/stable". Specify "builtin/latest" for the latest model. |
| }, |
| }, |
| ], |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # This resource represents a long-running operation that is the result of a |
| # network API call. |
| "metadata": { # Service-specific metadata associated with the operation. It typically |
| # contains progress information and common metadata such as create time. |
| # Some services might not provide such metadata. Any method that returns a |
| # long-running operation should document the metadata type, if any. |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| "name": "A String", # The server-assigned name, which is only unique within the same service that |
| # originally returns it. If you use the default HTTP mapping, the |
| # `name` should be a resource name ending with `operations/{unique_id}`. |
| "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| }, |
| "response": { # The normal response of the operation in case of success. If the original |
| # method returns no data on success, such as `Delete`, the response is |
| # `google.protobuf.Empty`. If the original method is standard |
| # `Get`/`Create`/`Update`, the response should be the resource. For other |
| # methods, the response should have the type `XxxResponse`, where `Xxx` |
| # is the original method name. For example, if the original method name |
| # is `TakeSnapshot()`, the inferred response type is |
| # `TakeSnapshotResponse`. |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| "done": True or False, # If the value is `false`, it means the operation is still in progress. |
| # If `true`, the operation is completed, and either `error` or `response` is |
| # available. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="process">process(parent, body=None, x__xgafv=None)</code> |
| <pre>Processes a single document. |
| |
| Args: |
| parent: string, Target project and location to make a call. |
| |
| Format: `projects/{project-id}/locations/{location-id}`. |
| |
| If no location is specified, a region will be chosen automatically. |
| This field is only populated when used in ProcessDocument method. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # Request to process one document. |
| "ocrParams": { # Parameters to control Optical Character Recognition (OCR) behavior. # Controls OCR behavior. If not specified, the system will decide reasonable |
| # defaults. |
| "languageHints": [ # List of languages to use for OCR. In most cases, an empty value |
| # yields the best results since it enables automatic language detection. For |
| # languages based on the Latin alphabet, setting `language_hints` is not |
| # needed. In rare cases, when the language of the text in the image is known, |
| # setting a hint will help get better results (although it will be a |
| # significant hindrance if the hint is wrong). Document processing returns an |
| # error if one or more of the specified languages is not one of the |
| # supported languages. |
| "A String", |
| ], |
| }, |
| "tableExtractionParams": { # Parameters to control table extraction behavior. # Controls table extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "tableBoundHints": [ # Optional. Table bounding box hints that can be provided to complex cases |
| # which our algorithm cannot locate the table(s) in. |
| { # A hint for a table bounding box on the page for table parsing. |
| "pageNumber": 42, # Optional. Page number for multi-paged inputs this hint applies to. If not |
| # provided, this hint will apply to all pages by default. This value is |
| # 1-based. |
| "boundingBox": { # A bounding polygon for the detected image annotation. # Bounding box hint for a table on this page. The coordinates must be |
| # normalized to [0,1] and the bounding box must be an axis-aligned rectangle. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| }, |
| ], |
| "headerHints": [ # Optional. Reserved for future use. |
| "A String", |
| ], |
| "modelVersion": "A String", # Model version of the table extraction system. Default is "builtin/stable". |
| # Specify "builtin/latest" for the latest model. |
| "enabled": True or False, # Whether to enable table extraction. |
| }, |
| "automlParams": { # Parameters to control AutoML model prediction behavior. # Controls AutoML model prediction behavior. AutoMlParams cannot be used |
| # together with other Params. |
| "model": "A String", # Resource name of the AutoML model. |
| # |
| # Format: `projects/{project-id}/locations/{location-id}/models/{model-id}`. |
| }, |
| "inputConfig": { # The desired input location and metadata. # Required. Information about the input file. |
| "gcsSource": { # The Google Cloud Storage location where the input file will be read from. # The Google Cloud Storage location to read the input from. This must be a |
| # single file. |
| "uri": "A String", |
| }, |
| "contents": "A String", # Content in bytes, represented as a stream of bytes. |
| # Note: As with all `bytes` fields, proto buffer messages use a pure binary |
| # representation, whereas JSON representations use base64. |
| # |
| # This field only works for synchronous ProcessDocument method. |
| "mimeType": "A String", # Required. Mimetype of the input. Current supported mimetypes are application/pdf, |
| # image/tiff, and image/gif. |
| # In addition, application/json type is supported for requests with |
| # ProcessDocumentRequest.automl_params field set. The JSON file needs to |
| # be in Document format. |
| }, |
| "formExtractionParams": { # Parameters to control form extraction behavior. # Controls form extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "modelVersion": "A String", # Model version of the form extraction system. Default is |
| # "builtin/stable". Specify "builtin/latest" for the latest model. |
| # For custom form models, specify: “custom/{model_name}". Model name |
| # format is "bucket_name/path/to/modeldir" corresponding to |
| # "gs://bucket_name/path/to/modeldir" where annotated examples are stored. |
| "enabled": True or False, # Whether to enable form extraction. |
| "keyValuePairHints": [ # Reserved for future use. |
| { # Reserved for future use. |
| "valueTypes": [ # Type of the value. This is case-insensitive, and could be one of: |
| # ADDRESS, LOCATION, ORGANIZATION, PERSON, PHONE_NUMBER, |
| # ID, NUMBER, EMAIL, PRICE, TERMS, DATE, NAME. Types not in this list will |
| # be ignored. |
| "A String", |
| ], |
| "key": "A String", # The key text for the hint. |
| }, |
| ], |
| }, |
| "documentType": "A String", # Specifies a known document type for deeper structure detection. Valid |
| # values are currently "general" and "invoice". If not provided, "general"\ |
| # is used as default. If any other value is given, the request is rejected. |
| "parent": "A String", # Target project and location to make a call. |
| # |
| # Format: `projects/{project-id}/locations/{location-id}`. |
| # |
| # If no location is specified, a region will be chosen automatically. |
| # This field is only populated when used in ProcessDocument method. |
| "outputConfig": { # The desired output location and metadata. # The desired output location. This field is only needed in |
| # BatchProcessDocumentsRequest. |
| "pagesPerShard": 42, # The max number of pages to include into each output Document shard JSON on |
| # Google Cloud Storage. |
| # |
| # The valid range is [1, 100]. If not specified, the default value is 20. |
| # |
| # For example, for one pdf file with 100 pages, 100 parsed pages will be |
| # produced. If `pages_per_shard` = 20, then 5 Document shard JSON files each |
| # containing 20 parsed pages will be written under the prefix |
| # OutputConfig.gcs_destination.uri and suffix pages-x-to-y.json where |
| # x and y are 1-indexed page numbers. |
| # |
| # Example GCS outputs with 157 pages and pages_per_shard = 50: |
| # |
| # <prefix>pages-001-to-050.json |
| # <prefix>pages-051-to-100.json |
| # <prefix>pages-101-to-150.json |
| # <prefix>pages-151-to-157.json |
| "gcsDestination": { # The Google Cloud Storage location where the output file will be written to. # The Google Cloud Storage location to write the output to. |
| "uri": "A String", |
| }, |
| }, |
| "entityExtractionParams": { # Parameters to control entity extraction behavior. # Controls entity extraction behavior. If not specified, the system will |
| # decide reasonable defaults. |
| "enabled": True or False, # Whether to enable entity extraction. |
| "modelVersion": "A String", # Model version of the entity extraction. Default is |
| # "builtin/stable". Specify "builtin/latest" for the latest model. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Document represents the canonical document resource in Document Understanding |
| # AI. |
| # It is an interchange format that provides insights into documents and allows |
| # for collaboration between users and Document Understanding AI to iterate and |
| # optimize for quality. |
| "content": "A String", # Inline document content, represented as a stream of bytes. |
| # Note: As with all `bytes` fields, protobuffers use a pure binary |
| # representation, whereas JSON representations use base64. |
| "labels": [ # Labels for this document. |
| { # Label attaches schema information and/or other metadata to segments within |
| # a Document. Multiple Labels on a single field can denote either |
| # different labels, different instances of the same label created at |
| # different times, or some combination of both. |
| "automlModel": "A String", # Label is generated AutoML model. This field stores the full resource |
| # name of the AutoML model. |
| # |
| # Format: |
| # `projects/{project-id}/locations/{location-id}/models/{model-id}` |
| "confidence": 3.14, # Confidence score between 0 and 1 for label assignment. |
| "name": "A String", # Name of the label. |
| # |
| # When the label is generated from AutoML Text Classification model, this |
| # field represents the name of the category. |
| }, |
| ], |
| "uri": "A String", # Currently supports Google Cloud Storage URI of the form |
| # `gs://bucket_name/object_name`. Object versioning is not supported. |
| # See [Google Cloud Storage Request |
| # URIs](https://cloud.google.com/storage/docs/reference-uris) for more |
| # info. |
| "error": { # The `Status` type defines a logical error model that is suitable for # Any error that occurred while processing this document. |
| # different programming environments, including REST APIs and RPC APIs. It is |
| # used by [gRPC](https://github.com/grpc). Each `Status` message contains |
| # three pieces of data: error code, error message, and error details. |
| # |
| # You can find out more about this error model and how to work with it in the |
| # [API Design Guide](https://cloud.google.com/apis/design/errors). |
| "message": "A String", # A developer-facing error message, which should be in English. Any |
| # user-facing error message should be localized and sent in the |
| # google.rpc.Status.details field, or localized by the client. |
| "details": [ # A list of messages that carry the error details. There is a common set of |
| # message types for APIs to use. |
| { |
| "a_key": "", # Properties of the object. Contains field @type with type URL. |
| }, |
| ], |
| "code": 42, # The status code, which should be an enum value of google.rpc.Code. |
| }, |
| "pages": [ # Visual page layout for the Document. |
| { # A page in a Document. |
| "dimension": { # Dimension for the page. # Physical dimension of the page. |
| "width": 3.14, # Page width. |
| "height": 3.14, # Page height. |
| "unit": "A String", # Dimension unit. |
| }, |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "tables": [ # A list of visually detected tables on the page. |
| { # A table representation similar to HTML table structure. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for Table. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "bodyRows": [ # Body rows of the table. |
| { # A row of table cells. |
| "cells": [ # Cells that make up this row. |
| { # A cell representation inside the table. |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "rowSpan": 42, # How many rows this cell spans. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for TableCell. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "colSpan": 42, # How many columns this cell spans. |
| }, |
| ], |
| }, |
| ], |
| "headerRows": [ # Header rows of the table. |
| { # A row of table cells. |
| "cells": [ # Cells that make up this row. |
| { # A cell representation inside the table. |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "rowSpan": 42, # How many rows this cell spans. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for TableCell. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "colSpan": 42, # How many columns this cell spans. |
| }, |
| ], |
| }, |
| ], |
| }, |
| ], |
| "layout": { # Visual element describing a layout unit on a page. # Layout for the page. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "lines": [ # A list of visually detected text lines on the page. |
| # A collection of tokens that a human would perceive as a line. |
| { # A collection of tokens that a human would perceive as a line. |
| # Does not cross column boundaries, can be horizontal, vertical, etc. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for Line. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| }, |
| ], |
| "paragraphs": [ # A list of visually detected text paragraphs on the page. |
| # A collection of lines that a human would perceive as a paragraph. |
| { # A collection of lines that a human would perceive as a paragraph. |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "layout": { # Visual element describing a layout unit on a page. # Layout for Paragraph. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| }, |
| ], |
| "formFields": [ # A list of visually detected form fields on the page. |
| { # A form field detected on the page. |
| "valueType": "A String", # If the value is non-textual, this field represents the type. Current |
| # valid values are: |
| # - blank (this indicates the field_value is normal text) |
| # - "unfilled_checkbox" |
| # - "filled_checkbox" |
| "fieldName": { # Visual element describing a layout unit on a page. # Layout for the FormField name. e.g. `Address`, `Email`, |
| # `Grand total`, `Phone number`, etc. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "nameDetectedLanguages": [ # A list of detected languages for name together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "valueDetectedLanguages": [ # A list of detected languages for value together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "fieldValue": { # Visual element describing a layout unit on a page. # Layout for the FormField value. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| }, |
| ], |
| "blocks": [ # A list of visually detected text blocks on the page. |
| # A block has a set of lines (collected into paragraphs) that have a common |
| # line-spacing and orientation. |
| { # A block has a set of lines (collected into paragraphs) that have a |
| # common line-spacing and orientation. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for Block. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| }, |
| ], |
| "tokens": [ # A list of visually detected tokens on the page. |
| { # A detected token. |
| "detectedBreak": { # Detected break at the end of a Token. # Detected break at the end of a Token. |
| "type": "A String", # Detected break type. |
| }, |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "layout": { # Visual element describing a layout unit on a page. # Layout for Token. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| }, |
| ], |
| "pageNumber": 42, # 1-based index for current Page in a parent Document. |
| # Useful when a page is taken out of a Document for individual |
| # processing. |
| "visualElements": [ # A list of detected non-text visual elements e.g. checkbox, |
| # signature etc. on the page. |
| { # Detected non-text visual elements e.g. checkbox, signature etc. on the |
| # page. |
| "detectedLanguages": [ # A list of detected languages together with confidence. |
| { # Detected language for a structural component. |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "confidence": 3.14, # Confidence of detected language. Range [0, 1]. |
| }, |
| ], |
| "type": "A String", # Type of the VisualElement. |
| "layout": { # Visual element describing a layout unit on a page. # Layout for VisualElement. |
| "orientation": "A String", # Detected orientation for the Layout. |
| "boundingPoly": { # A bounding polygon for the detected image annotation. # The bounding polygon for the Layout. |
| "normalizedVertices": [ # The bounding polygon normalized vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the normalized vertex coordinates are relative to the original image |
| # and range from 0 to 1. |
| "x": 3.14, # X coordinate. |
| "y": 3.14, # Y coordinate. |
| }, |
| ], |
| "vertices": [ # The bounding polygon vertices. |
| { # A vertex represents a 2D point in the image. |
| # NOTE: the vertex coordinates are in the same scale as the original image. |
| "x": 42, # X coordinate. |
| "y": 42, # Y coordinate. |
| }, |
| ], |
| }, |
| "confidence": 3.14, # Confidence of the current Layout within context of the object this |
| # layout is for. e.g. confidence can be for a single token, a table, |
| # a visual element, etc. depending on context. Range [0, 1]. |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| }, |
| }, |
| ], |
| }, |
| ], |
| "text": "A String", # UTF-8 encoded text in reading order from the document. |
| "mimeType": "A String", # An IANA published MIME type (also referred to as media type). For more |
| # information, see |
| # https://www.iana.org/assignments/media-types/media-types.xhtml. |
| "entityRelations": [ # Relationship among Document.entities. |
| { # Relationship between Entities. |
| "objectId": "A String", # Object entity id. |
| "relation": "A String", # Relationship description. |
| "subjectId": "A String", # Subject entity id. |
| }, |
| ], |
| "translations": [ # A list of translations on Document.text. For document shards, |
| # translations in this list may cross shard boundaries. |
| { # A translation of the text segment. |
| "textAnchor": { # Text reference indexing into the Document.text. # Provenance of the translation. |
| # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| "languageCode": "A String", # The BCP-47 language code, such as "en-US" or "sr-Latn". For more |
| # information, see |
| # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
| "translatedText": "A String", # Text translated into the target language. |
| }, |
| ], |
| "shardInfo": { # For a large document, sharding may be performed to produce several # Information about the sharding if this document is sharded part of a larger |
| # document. If the document is not sharded, this message is not specified. |
| # document shards. Each document shard contains this field to detail which |
| # shard it is. |
| "shardIndex": "A String", # The 0-based index of this shard. |
| "textOffset": "A String", # The index of the first character in Document.text in the overall |
| # document global text. |
| "shardCount": "A String", # Total number of shards. |
| }, |
| "textStyles": [ # Styles for the Document.text. |
| { # Annotation for common text style attributes. This adheres to CSS |
| # conventions as much as possible. |
| "fontWeight": "A String", # Font weight. Possible values are normal, bold, bolder, and lighter. |
| # https://www.w3schools.com/cssref/pr_font_weight.asp |
| "textAnchor": { # Text reference indexing into the Document.text. # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| "textDecoration": "A String", # Text decoration. Follows CSS standard. |
| # <text-decoration-line> <text-decoration-color> <text-decoration-style> |
| # https://www.w3schools.com/cssref/pr_text_text-decoration.asp |
| "color": { # Represents a color in the RGBA color space. This representation is designed # Text color. |
| # for simplicity of conversion to/from color representations in various |
| # languages over compactness; for example, the fields of this representation |
| # can be trivially provided to the constructor of "java.awt.Color" in Java; it |
| # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" |
| # method in iOS; and, with just a little work, it can be easily formatted into |
| # a CSS "rgba()" string in JavaScript, as well. |
| # |
| # Note: this proto does not carry information about the absolute color space |
| # that should be used to interpret the RGB value (e.g. sRGB, Adobe RGB, |
| # DCI-P3, BT.2020, etc.). By default, applications SHOULD assume the sRGB color |
| # space. |
| # |
| # Note: when color equality needs to be decided, implementations, unless |
| # documented otherwise, will treat two colors to be equal if all their red, |
| # green, blue and alpha values each differ by at most 1e-5. |
| # |
| # Example (Java): |
| # |
| # import com.google.type.Color; |
| # |
| # // ... |
| # public static java.awt.Color fromProto(Color protocolor) { |
| # float alpha = protocolor.hasAlpha() |
| # ? protocolor.getAlpha().getValue() |
| # : 1.0; |
| # |
| # return new java.awt.Color( |
| # protocolor.getRed(), |
| # protocolor.getGreen(), |
| # protocolor.getBlue(), |
| # alpha); |
| # } |
| # |
| # public static Color toProto(java.awt.Color color) { |
| # float red = (float) color.getRed(); |
| # float green = (float) color.getGreen(); |
| # float blue = (float) color.getBlue(); |
| # float denominator = 255.0; |
| # Color.Builder resultBuilder = |
| # Color |
| # .newBuilder() |
| # .setRed(red / denominator) |
| # .setGreen(green / denominator) |
| # .setBlue(blue / denominator); |
| # int alpha = color.getAlpha(); |
| # if (alpha != 255) { |
| # result.setAlpha( |
| # FloatValue |
| # .newBuilder() |
| # .setValue(((float) alpha) / denominator) |
| # .build()); |
| # } |
| # return resultBuilder.build(); |
| # } |
| # // ... |
| # |
| # Example (iOS / Obj-C): |
| # |
| # // ... |
| # static UIColor* fromProto(Color* protocolor) { |
| # float red = [protocolor red]; |
| # float green = [protocolor green]; |
| # float blue = [protocolor blue]; |
| # FloatValue* alpha_wrapper = [protocolor alpha]; |
| # float alpha = 1.0; |
| # if (alpha_wrapper != nil) { |
| # alpha = [alpha_wrapper value]; |
| # } |
| # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; |
| # } |
| # |
| # static Color* toProto(UIColor* color) { |
| # CGFloat red, green, blue, alpha; |
| # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) { |
| # return nil; |
| # } |
| # Color* result = [[Color alloc] init]; |
| # [result setRed:red]; |
| # [result setGreen:green]; |
| # [result setBlue:blue]; |
| # if (alpha <= 0.9999) { |
| # [result setAlpha:floatWrapperWithValue(alpha)]; |
| # } |
| # [result autorelease]; |
| # return result; |
| # } |
| # // ... |
| # |
| # Example (JavaScript): |
| # |
| # // ... |
| # |
| # var protoToCssColor = function(rgb_color) { |
| # var redFrac = rgb_color.red || 0.0; |
| # var greenFrac = rgb_color.green || 0.0; |
| # var blueFrac = rgb_color.blue || 0.0; |
| # var red = Math.floor(redFrac * 255); |
| # var green = Math.floor(greenFrac * 255); |
| # var blue = Math.floor(blueFrac * 255); |
| # |
| # if (!('alpha' in rgb_color)) { |
| # return rgbToCssColor_(red, green, blue); |
| # } |
| # |
| # var alphaFrac = rgb_color.alpha.value || 0.0; |
| # var rgbParams = [red, green, blue].join(','); |
| # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); |
| # }; |
| # |
| # var rgbToCssColor_ = function(red, green, blue) { |
| # var rgbNumber = new Number((red << 16) | (green << 8) | blue); |
| # var hexString = rgbNumber.toString(16); |
| # var missingZeros = 6 - hexString.length; |
| # var resultBuilder = ['#']; |
| # for (var i = 0; i < missingZeros; i++) { |
| # resultBuilder.push('0'); |
| # } |
| # resultBuilder.push(hexString); |
| # return resultBuilder.join(''); |
| # }; |
| # |
| # // ... |
| "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is, |
| # the final pixel color is defined by the equation: |
| # |
| # pixel color = alpha * (this color) + (1.0 - alpha) * (background color) |
| # |
| # This means that a value of 1.0 corresponds to a solid color, whereas |
| # a value of 0.0 corresponds to a completely transparent color. This |
| # uses a wrapper message rather than a simple float scalar so that it is |
| # possible to distinguish between a default value and the value being unset. |
| # If omitted, this color object is to be rendered as a solid color |
| # (as if the alpha value had been explicitly given with a value of 1.0). |
| "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1]. |
| "green": 3.14, # The amount of green in the color as a value in the interval [0, 1]. |
| "red": 3.14, # The amount of red in the color as a value in the interval [0, 1]. |
| }, |
| "fontSize": { # Font size with unit. # Font size. |
| "size": 3.14, # Font size for the text. |
| "unit": "A String", # Unit for the font size. Follows CSS naming (in, px, pt, etc.). |
| }, |
| "backgroundColor": { # Represents a color in the RGBA color space. This representation is designed # Text background color. |
| # for simplicity of conversion to/from color representations in various |
| # languages over compactness; for example, the fields of this representation |
| # can be trivially provided to the constructor of "java.awt.Color" in Java; it |
| # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" |
| # method in iOS; and, with just a little work, it can be easily formatted into |
| # a CSS "rgba()" string in JavaScript, as well. |
| # |
| # Note: this proto does not carry information about the absolute color space |
| # that should be used to interpret the RGB value (e.g. sRGB, Adobe RGB, |
| # DCI-P3, BT.2020, etc.). By default, applications SHOULD assume the sRGB color |
| # space. |
| # |
| # Note: when color equality needs to be decided, implementations, unless |
| # documented otherwise, will treat two colors to be equal if all their red, |
| # green, blue and alpha values each differ by at most 1e-5. |
| # |
| # Example (Java): |
| # |
| # import com.google.type.Color; |
| # |
| # // ... |
| # public static java.awt.Color fromProto(Color protocolor) { |
| # float alpha = protocolor.hasAlpha() |
| # ? protocolor.getAlpha().getValue() |
| # : 1.0; |
| # |
| # return new java.awt.Color( |
| # protocolor.getRed(), |
| # protocolor.getGreen(), |
| # protocolor.getBlue(), |
| # alpha); |
| # } |
| # |
| # public static Color toProto(java.awt.Color color) { |
| # float red = (float) color.getRed(); |
| # float green = (float) color.getGreen(); |
| # float blue = (float) color.getBlue(); |
| # float denominator = 255.0; |
| # Color.Builder resultBuilder = |
| # Color |
| # .newBuilder() |
| # .setRed(red / denominator) |
| # .setGreen(green / denominator) |
| # .setBlue(blue / denominator); |
| # int alpha = color.getAlpha(); |
| # if (alpha != 255) { |
| # result.setAlpha( |
| # FloatValue |
| # .newBuilder() |
| # .setValue(((float) alpha) / denominator) |
| # .build()); |
| # } |
| # return resultBuilder.build(); |
| # } |
| # // ... |
| # |
| # Example (iOS / Obj-C): |
| # |
| # // ... |
| # static UIColor* fromProto(Color* protocolor) { |
| # float red = [protocolor red]; |
| # float green = [protocolor green]; |
| # float blue = [protocolor blue]; |
| # FloatValue* alpha_wrapper = [protocolor alpha]; |
| # float alpha = 1.0; |
| # if (alpha_wrapper != nil) { |
| # alpha = [alpha_wrapper value]; |
| # } |
| # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; |
| # } |
| # |
| # static Color* toProto(UIColor* color) { |
| # CGFloat red, green, blue, alpha; |
| # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) { |
| # return nil; |
| # } |
| # Color* result = [[Color alloc] init]; |
| # [result setRed:red]; |
| # [result setGreen:green]; |
| # [result setBlue:blue]; |
| # if (alpha <= 0.9999) { |
| # [result setAlpha:floatWrapperWithValue(alpha)]; |
| # } |
| # [result autorelease]; |
| # return result; |
| # } |
| # // ... |
| # |
| # Example (JavaScript): |
| # |
| # // ... |
| # |
| # var protoToCssColor = function(rgb_color) { |
| # var redFrac = rgb_color.red || 0.0; |
| # var greenFrac = rgb_color.green || 0.0; |
| # var blueFrac = rgb_color.blue || 0.0; |
| # var red = Math.floor(redFrac * 255); |
| # var green = Math.floor(greenFrac * 255); |
| # var blue = Math.floor(blueFrac * 255); |
| # |
| # if (!('alpha' in rgb_color)) { |
| # return rgbToCssColor_(red, green, blue); |
| # } |
| # |
| # var alphaFrac = rgb_color.alpha.value || 0.0; |
| # var rgbParams = [red, green, blue].join(','); |
| # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); |
| # }; |
| # |
| # var rgbToCssColor_ = function(red, green, blue) { |
| # var rgbNumber = new Number((red << 16) | (green << 8) | blue); |
| # var hexString = rgbNumber.toString(16); |
| # var missingZeros = 6 - hexString.length; |
| # var resultBuilder = ['#']; |
| # for (var i = 0; i < missingZeros; i++) { |
| # resultBuilder.push('0'); |
| # } |
| # resultBuilder.push(hexString); |
| # return resultBuilder.join(''); |
| # }; |
| # |
| # // ... |
| "alpha": 3.14, # The fraction of this color that should be applied to the pixel. That is, |
| # the final pixel color is defined by the equation: |
| # |
| # pixel color = alpha * (this color) + (1.0 - alpha) * (background color) |
| # |
| # This means that a value of 1.0 corresponds to a solid color, whereas |
| # a value of 0.0 corresponds to a completely transparent color. This |
| # uses a wrapper message rather than a simple float scalar so that it is |
| # possible to distinguish between a default value and the value being unset. |
| # If omitted, this color object is to be rendered as a solid color |
| # (as if the alpha value had been explicitly given with a value of 1.0). |
| "blue": 3.14, # The amount of blue in the color as a value in the interval [0, 1]. |
| "green": 3.14, # The amount of green in the color as a value in the interval [0, 1]. |
| "red": 3.14, # The amount of red in the color as a value in the interval [0, 1]. |
| }, |
| "textStyle": "A String", # Text style. Possible values are normal, italic, and oblique. |
| # https://www.w3schools.com/cssref/pr_font_font-style.asp |
| }, |
| ], |
| "entities": [ # A list of entities detected on Document.text. For document shards, |
| # entities in this list may cross shard boundaries. |
| { # A phrase in the text that is a known entity type, such as a person, an |
| # organization, or location. |
| "textAnchor": { # Text reference indexing into the Document.text. # Provenance of the entity. |
| # Text anchor indexing into the Document.text. |
| "textSegments": [ # The text segments from the Document.text. |
| { # A text segment in the Document.text. The indices may be out of bounds |
| # which indicate that the text extends into another document shard for |
| # large sharded documents. See ShardInfo.text_offset |
| "startIndex": "A String", # TextSegment start UTF-8 char index in the Document.text. |
| "endIndex": "A String", # TextSegment half open end UTF-8 char index in the |
| # Document.text. |
| }, |
| ], |
| }, |
| "mentionId": "A String", # Deprecated. Use `id` field instead. |
| "type": "A String", # Entity type from a schema e.g. `Address`. |
| "confidence": 3.14, # Optional. Confidence of detected Schema entity. Range [0, 1]. |
| "mentionText": "A String", # Text value in the document e.g. `1600 Amphitheatre Pkwy`. |
| }, |
| ], |
| }</pre> |
| </div> |
| |
| </body></html> |