h6. [[FontManager]] h6(. » [[FontManager SWI Calls|SWI Calls]] h6((. » Font_ScanString h2. Font_ScanString h5. (SWI &400A1) |_<^{width:3em}. Entry | | |<^. R0|<^. Initial font handle, or 0 for current | |<^. R1|<^. Pointer to string | |<^. R2|<^. [[Font_ScanString Flags|Flags]] | |<^. R3|<^. X co-ordinate of mouse click, or width of string | |<^. R4|<^. Y co-ordinate of mouse click, or height of string | |<^. R5|<^. Pointer to [[Font_ScanString Block|block]] | |<^. R6|<^. Pointer to [[Font Transformation Matrix]] | |<^. R7|<^. Length of string | |_<^{width:3em}. Exit || |<^. R1|<^. Pointer to where scan ended | |<^. R2|<^. Preserved | |<^. R3|<^. X of where scan ended| |<^. R4|<^. Y of where scan ended| |<^. R5|<^. Preserved| |<^. R6|<^. Preserved| |<^. R7|<^. Number of split characters in scanned part of string| h4. Use This call returns information on a string. h4. Notes How to use the call:<br /> * _How wide is a string?_ Use large values for R3, R4 and no split character. * _Given width, how much of a string will fit?_ Use correct width in R3, large value in R4 and (if needed) a split character in the buffer at R5. * _Address of a mouse click?_ Use correct width in R3, large value in R4 and (if needed) a split character in the buffer at R5. * _Graphical position of a caret?_ Set R7 to offset into string, use huge values for R3 and R4, and no split. The [[Font_ScanString Flags|flags]] in R2 determine how this call is used. Registers R0, R5, R6 and R7 are only used if bits 5, 6, 7 and 8 are set in flags in R2. Unlike [[Font_Paint]], this call only allows millipoints for all co-ordinates. h4. See also * [[Font_FutureFont]] * [[Font_Paint]] * [[Font Transformation Matrix]] * [[Font_ScanString Flags]] * [[Font_ScanString Block]]