| Customize Help
| Save Settings

MgraText



Function Map
Synopsis
Draw text in an image or add text to a 2D graphics list.
Syntax
void MgraText(
MIL_ID ContextGraId, //in
MIL_ID DstImageBufOrListGraId, //in
MIL_DOUBLE XStart, //in
MIL_DOUBLE YStart, //in
MIL_CONST_TEXT_PTR StringPtr //in
)
Description

This function draws text destructively (raster-based) in the specified image. Alternatively, this function can add a vector-based version of the text to the specified 2D graphics list.

Note that while the location of text can sometimes change (for example, by applying a camera calibration or zooming the display), the text's font will always remain the same, and the text itself will never be magnified or distorted.

Text is defined by a string (StringPtr) and a starting position (XStart, YStart). Text inherits all the relevant settings of the specified 2D graphics context, such as the foreground color (see MgraAlloc() for default context settings). If part of the text falls outside of the specified area (image or display), that part is clipped off. By default, a text's background is filled; to make it transparent, use MgraControl() with M_BACKGROUND_MODE.

To modify or inquire graphic context settings, use MgraControl() or MgraInquire(). To modify or inquire 2D graphics list settings, use MgraControlList() or MgraInquireList().

A text's coordinates are interpreted with respect to the input coordinate system, specified using MgraControl() or MgraControlList() with M_INPUT_UNITS. Note that if you set your input coordinate system to M_WORLD and you pass MgraText() an uncalibrated image, the function will generate an error.

Unlike most other functions that modify a MIL object, you can call this function concurrently from multiple threads on the same MIL 2D graphics list (DstImageBufOrListGraId) without using an M_MUTEX object, as long as all the other parameters of the concurrent calls do not also share data.

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
ContextGraId

Specifies the identifier of the 2D graphics context. This parameter must be set to one of the following values:

function map For specifying the 2D graphics context
Click to summarizeValue Description
Click to summarize M_DEFAULT

Specifies that the default 2D graphics context of the current MIL application is used.

Note that there is a different default 2D graphics context for each thread.

(summarize)
Click to summarize MIL 2D graphics context identifier

Specifies a valid 2D graphics context identifier, which you have allocated using MgraAlloc().

DstImageBufOrListGraId

Specifies the identifier of a valid image buffer in which to draw the graphic or the identifier of a valid 2D graphics list in which to add the graphic. You must have allocated the image buffer or the 2D graphics list using MbufAlloc...() or MgraAllocList(), respectively.

This image buffer must not have a region of interest (ROI) associated with it. Using an image buffer with an ROI will cause an error.

XStart INQ

Specifies the X-coordinate at which to start drawing the top-left corner of the first character in the input coordinate system.

YStart INQ

Specifies the Y-coordinate at which to start drawing the top-left corner of the first character in the input coordinate system.

StringPtr

Specifies the address of the string containing the text to draw in the destination buffer.

function map For specifying the string
Click to summarizeValue Description
Click to summarize MIL_TEXT("String") 1

Specifies the address of the null-terminated (\0) ASCII string that must be drawn in the destination buffer (DstImageBufOrListGraId). There is no restriction on the length of the string.

(summarize)

1 If you are passing the value in a variable, don't enclose it in MIL_TEXT().

Compilation information
Header Include mil.h.
Library Use mil.lib.
DLL Requires mil.dll.
DEFAULT NONE