Text Display¶
Class: TextDisplayVisualizationBlockV1
Source: inference.core.workflows.core_steps.visualizations.text_display.v1.TextDisplayVisualizationBlockV1
The Text Display block renders text on an image with full control over styling and positioning.
Dynamic Text Content¶
Text content can be parameterized with workflow execution outcomes using the same templating syntax as Email and SMS notification blocks:
text = "Detected {{ $parameters.count }} objects of class {{ $parameters.class_name }}"
Parameters are provided via the text_parameters field:
text_parameters = {
"count": "$steps.model.predictions",
"class_name": "$inputs.target_class"
}
You can apply transformations to parameters using text_parameters_operations:
text_parameters_operations = {
"count": [{"type": "SequenceLength"}]
}
Styling Options¶
- text_color: Color of the text. Supports:
- Supervision color names (uppercase): "WHITE", "BLACK", "RED", "GREEN", "BLUE", "YELLOW", "ROBOFLOW", etc.
- Hex format: "#RRGGBB" (e.g., "#FF0000" for red)
- RGB format: "rgb(R, G, B)" (e.g., "rgb(255, 0, 0)" for red)
- BGR format: "bgr(B, G, R)" (e.g., "bgr(0, 0, 255)" for red)
- background_color: Background color behind the text. Supports the same color formats as
text_color. Use "transparent" for no background. - background_opacity: Transparency of the background (0.0 = fully transparent, 1.0 = fully opaque)
- font_scale: Scale factor for the font size
- font_thickness: Thickness of the text strokes
- padding: Padding around the text in pixels
- text_align: Horizontal text alignment ("left", "center", "right")
- border_radius: Radius for rounded corners on the background
Positioning Options¶
The block supports both absolute and relative positioning:
Absolute Positioning (position_mode = "absolute"):
- position_x: X coordinate in pixels from the left edge
- position_y: Y coordinate in pixels from the top edge
Relative Positioning (position_mode = "relative"):
- anchor: Where to anchor the text ("center", "top_left", "top_center", "top_right",
"bottom_left", "bottom_center", "bottom_right", "center_left", "center_right")
- offset_x: Horizontal offset from the anchor point (positive = right)
- offset_y: Vertical offset from the anchor point (positive = down)
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/text_display@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
text |
str |
The text content to display. Supports parameter interpolation using {{ $parameters.name }} syntax.. | ❌ |
text_parameters |
Dict[str, Union[bool, float, int, str]] |
Parameters to interpolate into the text.. | ✅ |
text_parameters_operations |
Dict[str, List[Union[ClassificationPropertyExtract, ConvertDictionaryToJSON, ConvertImageToBase64, ConvertImageToJPEG, DetectionsFilter, DetectionsOffset, DetectionsPropertyExtract, DetectionsRename, DetectionsSelection, DetectionsShift, DetectionsToDictionary, Divide, ExtractDetectionProperty, ExtractFrameMetadata, ExtractImageProperty, LookupTable, Multiply, NumberRound, NumericSequenceAggregate, PickDetectionsByParentClass, RandomNumber, SequenceAggregate, SequenceApply, SequenceElementsCount, SequenceLength, SequenceMap, SortDetections, StringMatches, StringSubSequence, StringToLowerCase, StringToUpperCase, TimestampToISOFormat, ToBoolean, ToNumber, ToString]]] |
Operations to apply to text parameters before interpolation.. | ❌ |
text_color |
str |
Color of the text. Supports supervision color names (WHITE, BLACK, RED, GREEN, BLUE, YELLOW, ROBOFLOW, etc.), hex format (#RRGGBB), rgb(R,G,B) format, or bgr(B,G,R) format.. | ✅ |
background_color |
str |
Background color behind the text. Supports the same color formats as text_color. Use 'transparent' for no background.. | ✅ |
background_opacity |
float |
Opacity of the background (0.0 = fully transparent, 1.0 = fully opaque).. | ✅ |
font_scale |
float |
Scale factor for the font size.. | ✅ |
font_thickness |
int |
Thickness of the text strokes.. | ✅ |
padding |
int |
Padding around the text in pixels.. | ✅ |
text_align |
str |
Horizontal alignment of the text within its bounding box.. | ✅ |
border_radius |
int |
Radius for rounded corners on the background rectangle.. | ✅ |
position_mode |
str |
Positioning mode: 'absolute' uses exact pixel coordinates, 'relative' uses anchor points with offsets.. | ✅ |
position_x |
int |
X coordinate (pixels from left edge) when using absolute positioning.. | ✅ |
position_y |
int |
Y coordinate (pixels from top edge) when using absolute positioning.. | ✅ |
anchor |
str |
Anchor point for relative positioning.. | ✅ |
offset_x |
int |
Horizontal offset from anchor point (positive = right).. | ✅ |
offset_y |
int |
Vertical offset from anchor point (positive = down).. | ✅ |
copy_image |
bool |
Whether to copy the input image before drawing (preserves original).. | ✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to Text Display in version v1.
- inputs:
Mask Visualization,Classification Label Visualization,Detections Consensus,Detections Merge,Instance Segmentation Model,Webhook Sink,Multi-Label Classification Model,Email Notification,QR Code Generator,VLM As Detector,LMM,Multi-Label Classification Model,SAM 3,Detection Offset,Corner Visualization,Image Convert Grayscale,Stability AI Outpainting,Segment Anything 2 Model,Halo Visualization,JSON Parser,Object Detection Model,Single-Label Classification Model,Trace Visualization,Google Vision OCR,Clip Comparison,Instance Segmentation Model,CSV Formatter,Text Display,Stitch Images,Google Gemini,Local File Sink,Slack Notification,VLM As Classifier,Roboflow Dataset Upload,PTZ Tracking (ONVIF).md),Color Visualization,Dot Visualization,Polygon Visualization,Object Detection Model,Anthropic Claude,Buffer,Byte Tracker,Contrast Equalization,Identify Changes,Detections Classes Replacement,Dimension Collapse,Perception Encoder Embedding Model,First Non Empty Or Default,Velocity,Continue If,Environment Secrets Store,Expression,Moondream2,SIFT Comparison,Halo Visualization,Florence-2 Model,Blur Visualization,Label Visualization,Twilio SMS/MMS Notification,Ellipse Visualization,OpenAI,SIFT,Model Monitoring Inference Aggregator,Single-Label Classification Model,Detections List Roll-Up,OpenAI,Image Threshold,Background Color Visualization,Model Comparison Visualization,Size Measurement,OpenAI,Keypoint Detection Model,Gaze Detection,Polygon Visualization,SAM 3,Twilio SMS Notification,Bounding Box Visualization,OCR Model,Overlap Filter,Icon Visualization,Time in Zone,Google Gemini,Florence-2 Model,Roboflow Dataset Upload,Anthropic Claude,Rate Limiter,Dynamic Zone,Dynamic Crop,CLIP Embedding Model,VLM As Detector,Google Gemini,Path Deviation,Image Blur,Line Counter,Byte Tracker,Cache Set,SmolVLM2,Stability AI Inpainting,Template Matching,Image Contours,Path Deviation,Morphological Transformation,Triangle Visualization,Bounding Rectangle,Detections Stitch,Relative Static Crop,Property Definition,Detections Filter,Camera Calibration,Grid Visualization,Detections Stabilizer,Delta Filter,Camera Focus,Image Slicer,Detections Combine,LMM For Classification,Line Counter Visualization,Keypoint Detection Model,Llama 3.2 Vision,Distance Measurement,SIFT Comparison,Camera Focus,Dominant Color,Time in Zone,Background Subtraction,Image Slicer,Circle Visualization,Seg Preview,Identify Outliers,Qwen3-VL,Barcode Detection,Clip Comparison,Email Notification,QR Code Detection,Byte Tracker,Image Preprocessing,SAM 3,Depth Estimation,Cosine Similarity,Cache Get,Line Counter,Time in Zone,CogVLM,Absolute Static Crop,Roboflow Custom Metadata,EasyOCR,Stitch OCR Detections,Perspective Correction,Qwen2.5-VL,Anthropic Claude,Pixelate Visualization,Data Aggregator,Stability AI Image Generation,Reference Path Visualization,Keypoint Visualization,VLM As Classifier,Detection Event Log,Polygon Zone Visualization,YOLO-World Model,Stitch OCR Detections,Crop Visualization,Pixel Color Count,Motion Detection,OpenAI,Detections Transformation - outputs:
Anthropic Claude,Mask Visualization,Classification Label Visualization,Instance Segmentation Model,Multi-Label Classification Model,Email Notification,Dynamic Crop,CLIP Embedding Model,VLM As Detector,VLM As Detector,Google Gemini,Multi-Label Classification Model,LMM,SAM 3,Image Blur,Corner Visualization,Image Convert Grayscale,Byte Tracker,Stability AI Outpainting,SmolVLM2,Segment Anything 2 Model,Halo Visualization,Stability AI Inpainting,Object Detection Model,Template Matching,Single-Label Classification Model,Image Contours,Trace Visualization,Google Vision OCR,Morphological Transformation,Triangle Visualization,Instance Segmentation Model,Clip Comparison,Detections Stitch,Relative Static Crop,Text Display,Stitch Images,Google Gemini,Camera Calibration,Detections Stabilizer,VLM As Classifier,Roboflow Dataset Upload,Camera Focus,Color Visualization,Dot Visualization,Image Slicer,Polygon Visualization,Object Detection Model,Anthropic Claude,LMM For Classification,Line Counter Visualization,Keypoint Detection Model,Buffer,Llama 3.2 Vision,Contrast Equalization,SIFT Comparison,Camera Focus,Perception Encoder Embedding Model,Dominant Color,Time in Zone,Background Subtraction,Image Slicer,Circle Visualization,Moondream2,Seg Preview,Halo Visualization,Florence-2 Model,Blur Visualization,Qwen3-VL,Twilio SMS/MMS Notification,Label Visualization,Barcode Detection,Clip Comparison,Ellipse Visualization,OpenAI,QR Code Detection,SIFT,Image Preprocessing,SAM 3,Single-Label Classification Model,OpenAI,Image Threshold,Background Color Visualization,Model Comparison Visualization,Depth Estimation,OpenAI,Motion Detection,Keypoint Detection Model,CogVLM,Absolute Static Crop,Gaze Detection,EasyOCR,Perspective Correction,Qwen2.5-VL,Anthropic Claude,Pixelate Visualization,Reference Path Visualization,Stability AI Image Generation,Keypoint Visualization,SAM 3,Polygon Visualization,VLM As Classifier,Bounding Box Visualization,Polygon Zone Visualization,OCR Model,YOLO-World Model,Icon Visualization,Crop Visualization,Pixel Color Count,Google Gemini,OpenAI,Florence-2 Model,Roboflow Dataset Upload
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Text Display in version v1 has.
Bindings
-
input
image(image): The image to display text on..text_parameters(*): Parameters to interpolate into the text..text_color(string): Color of the text. Supports supervision color names (WHITE, BLACK, RED, GREEN, BLUE, YELLOW, ROBOFLOW, etc.), hex format (#RRGGBB), rgb(R,G,B) format, or bgr(B,G,R) format..background_color(string): Background color behind the text. Supports the same color formats as text_color. Use 'transparent' for no background..background_opacity(float_zero_to_one): Opacity of the background (0.0 = fully transparent, 1.0 = fully opaque)..font_scale(float): Scale factor for the font size..font_thickness(integer): Thickness of the text strokes..padding(integer): Padding around the text in pixels..text_align(string): Horizontal alignment of the text within its bounding box..border_radius(integer): Radius for rounded corners on the background rectangle..position_mode(string): Positioning mode: 'absolute' uses exact pixel coordinates, 'relative' uses anchor points with offsets..position_x(integer): X coordinate (pixels from left edge) when using absolute positioning..position_y(integer): Y coordinate (pixels from top edge) when using absolute positioning..anchor(string): Anchor point for relative positioning..offset_x(integer): Horizontal offset from anchor point (positive = right)..offset_y(integer): Vertical offset from anchor point (positive = down)..copy_image(boolean): Whether to copy the input image before drawing (preserves original)..
-
output
image(image): Image in workflows.
Example JSON definition of step Text Display in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/text_display@v1",
"image": "$inputs.image",
"text": "Detection count: {{ $parameters.count }}",
"text_parameters": {
"class_name": "$inputs.target_class",
"count": "$steps.model.predictions"
},
"text_parameters_operations": {
"count": [
{
"type": "SequenceLength"
}
]
},
"text_color": "WHITE",
"background_color": "BLACK",
"background_opacity": 1.0,
"font_scale": 1.0,
"font_thickness": 1,
"padding": 5,
"text_align": "left",
"border_radius": 0,
"position_mode": "absolute",
"position_x": 10,
"position_y": 10,
"anchor": "center",
"offset_x": 0,
"offset_y": 0,
"copy_image": true
}