.\" Copyright (C) 2001 Information-technology Promotion Agency (IPA) .\" Copyright (C) 2001-2003 .\" National Institute of Advanced Industrial Science and Technology (AIST) .\" This file si aprt of the m17n library documentation. .\" Permission is granted to copy, distribute and/or modify this document .\" under the terms of the GNU Free Documentation License, Version 1.2 or .\" any later version published by the Free Software Foundation; with no .\" Invariant Section, Front-Cover Texts "The m17n library documentation", .\" and no Back-Cover Texts. A copy of the license is included in the .\" appendix entitled "GNU Free Documentation License". .TH "mdraw_text_per_char_extents" 3m17n "14 Jul 2007" "" "Version 1.4.0" "" "The m17n Library" \" -*- nroff -*- .ad l .nh .SH NAME mdraw_text_per_char_extents - Compute the text dimensions of each character of M-text. .SH SYNOPSIS int \fBmdraw_text_per_char_extents\fP (\fBMFrame\fP * \fIframe\fP, \fBMText\fP * \fImt\fP, int \fIfrom\fP, int \fIto\fP, \fBMDrawControl\fP * \fIcontrol\fP, \fBMDrawMetric\fP * \fIink_array_return\fP, \fBMDrawMetric\fP * \fIlogical_array_return\fP, int \fIarray_size\fP, int * \fInum_chars_return\fP, \fBMDrawMetric\fP * \fIoverall_ink_return\fP, \fBMDrawMetric\fP * \fIoverall_logical_return\fP) .SH DESCRIPTION The .ft B mdraw_text_per_char_extents() .ft R function computes the drawn metric of each character between .ft B from .ft R and .ft B to .ft R of M-text .ft B mt .ft R assuming that they are drawn on a window of frame .ft B frame .ft R using the .ft B mdraw_text_with_control() .ft R function with the drawing control object .ft B control\fP. .ft R .PP .SS array_size .ft R specifies the size of .ft B ink_array_return .ft R and .ft B logical_array_return\fP. .ft R Each successive element of .ft B ink_array_return .ft R and .ft B logical_array_return .ft R are set to the drawn ink and logical metrics of successive characters respectively, relative to the drawing origin of the M-text. The number of elements of .ft B ink_array_return .ft R and .ft B logical_array_return .ft R that have been set is returned to .ft B num_chars_retur. .PP If .ft B array_size .ft R is too small to return all metrics, the function returns -1 and store the requested size in .ft B num_chars_return\fP. .ft R Otherwise, it returns zero. .PP If pointer .ft B overall_ink_return .ft R and .ft B overall_logical_return .ft R are not .ft C NULL\fP, .ft R this function also computes the metrics of the overall text and stores the results in the members of the structure pointed to by .ft B overall_ink_return .ft R and .ft B overall_logical_return\fP. .ft R .PP If .ft B control->two_dimensional .ft R is nonzero, this function computes only the metrics of characters in the first line.