public sealed class TextAnnotation : IMessage<TextAnnotation>, IEquatable<TextAnnotation>, IDeepCloneable<TextAnnotation>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Vision v1 API class TextAnnotation.
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][google.cloud.vision.v1.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-07 UTC."],[[["\u003cp\u003eThe latest version available for the Google Cloud Vision v1 API class TextAnnotation is 3.7.0, with previous versions ranging down to 2.3.0.\u003c/p\u003e\n"],["\u003cp\u003eTextAnnotation is a class representing a structured format of text extracted via OCR, organized hierarchically from TextAnnotation down to individual Symbols.\u003c/p\u003e\n"],["\u003cp\u003eTextAnnotation implements multiple interfaces, including IMessage, IEquatable, IDeepCloneable, and IBufferMessage.\u003c/p\u003e\n"],["\u003cp\u003eThe class has properties for \u003ccode\u003ePages\u003c/code\u003e, which is a list of detected pages, and \u003ccode\u003eText\u003c/code\u003e, which represents the UTF-8 text content.\u003c/p\u003e\n"],["\u003cp\u003eTextAnnotation has two constructors, a default one \u003ccode\u003eTextAnnotation()\u003c/code\u003e and one which takes another TextAnnotation as a parameter, \u003ccode\u003eTextAnnotation(TextAnnotation other)\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,[]]