TextAnnotation contains a structured representation of OCR extracted
text. The hierarchy of an OCR extracted text structure is like this:
TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol Each
structural component, starting from Page, may further have their own
properties. Properties describe detected languages, breaks etc..
Please refer to the
TextAnnotation.TextProperty
message definition below for more detail.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Class TextAnnotation (3.10.2)\n\nVersion latestkeyboard_arrow_down\n\n- [3.10.2 (latest)](/python/docs/reference/vision/latest/google.cloud.vision_v1.types.TextAnnotation)\n- [3.10.0](/python/docs/reference/vision/3.10.0/google.cloud.vision_v1.types.TextAnnotation)\n- [3.9.0](/python/docs/reference/vision/3.9.0/google.cloud.vision_v1.types.TextAnnotation)\n- [3.8.1](/python/docs/reference/vision/3.8.1/google.cloud.vision_v1.types.TextAnnotation)\n- [3.7.4](/python/docs/reference/vision/3.7.4/google.cloud.vision_v1.types.TextAnnotation)\n- [3.6.0](/python/docs/reference/vision/3.6.0/google.cloud.vision_v1.types.TextAnnotation)\n- [3.5.0](/python/docs/reference/vision/3.5.0/google.cloud.vision_v1.types.TextAnnotation)\n- [3.4.5](/python/docs/reference/vision/3.4.5/google.cloud.vision_v1.types.TextAnnotation)\n- [3.3.1](/python/docs/reference/vision/3.3.1/google.cloud.vision_v1.types.TextAnnotation)\n- [3.2.0](/python/docs/reference/vision/3.2.0/google.cloud.vision_v1.types.TextAnnotation)\n- [3.1.4](/python/docs/reference/vision/3.1.4/google.cloud.vision_v1.types.TextAnnotation)\n- [3.0.0](/python/docs/reference/vision/3.0.0/google.cloud.vision_v1.types.TextAnnotation)\n- [2.8.0](/python/docs/reference/vision/2.8.0/google.cloud.vision_v1.types.TextAnnotation)\n- [2.7.3](/python/docs/reference/vision/2.7.3/google.cloud.vision_v1.types.TextAnnotation)\n- [2.6.3](/python/docs/reference/vision/2.6.3/google.cloud.vision_v1.types.TextAnnotation)\n- [2.5.0](/python/docs/reference/vision/2.5.0/google.cloud.vision_v1.types.TextAnnotation)\n- [2.4.4](/python/docs/reference/vision/2.4.4/google.cloud.vision_v1.types.TextAnnotation)\n- [2.3.2](/python/docs/reference/vision/2.3.2/google.cloud.vision_v1.types.TextAnnotation)\n- [2.2.0](/python/docs/reference/vision/2.2.0/google.cloud.vision_v1.types.TextAnnotation)\n- [2.1.0](/python/docs/reference/vision/2.1.0/google.cloud.vision_v1.types.TextAnnotation)\n- [2.0.0](/python/docs/reference/vision/2.0.0/google.cloud.vision_v1.types.TextAnnotation)\n- [1.0.2](/python/docs/reference/vision/1.0.2/google.cloud.vision_v1.types.TextAnnotation)\n- [0.42.0](/python/docs/reference/vision/0.42.0/google.cloud.vision_v1.types.TextAnnotation)\n- [0.41.0](/python/docs/reference/vision/0.41.0/google.cloud.vision_v1.types.TextAnnotation)\n- [0.40.0](/python/docs/reference/vision/0.40.0/google.cloud.vision_v1.types.TextAnnotation)\n- [0.39.0](/python/docs/reference/vision/0.39.0/google.cloud.vision_v1.types.TextAnnotation)\n- [0.38.1](/python/docs/reference/vision/0.38.1/google.cloud.vision_v1.types.TextAnnotation) \n\n TextAnnotation(mapping=None, *, ignore_unknown_fields=False, **kwargs)\n\nTextAnnotation contains a structured representation of OCR extracted\ntext. The hierarchy of an OCR extracted text structure is like this:\nTextAnnotation -\\\u003e Page -\\\u003e Block -\\\u003e Paragraph -\\\u003e Word -\\\u003e Symbol Each\nstructural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc..\nPlease refer to the\nTextAnnotation.TextProperty\nmessage definition below for more detail.\n\nClasses\n-------\n\n### DetectedBreak\n\n DetectedBreak(mapping=None, *, ignore_unknown_fields=False, **kwargs)\n\nDetected start or end of a structural component.\n\n### DetectedLanguage\n\n DetectedLanguage(mapping=None, *, ignore_unknown_fields=False, **kwargs)\n\nDetected language for a structural component.\n\n### TextProperty\n\n TextProperty(mapping=None, *, ignore_unknown_fields=False, **kwargs)\n\nAdditional information detected on the structural component."]]