.\" Copyright (C) 2001 Information-technology Promotion Agency (IPA) .\" Copyright (C) 2001-2011 .\" National Institute of Advanced Industrial Science and Technology (AIST) .\" This file is part 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, no Front-Cover Texts, .\" 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 "Mon Sep 25 2023" "Version 1.8.4" "The m17n Library" \" -*- nroff -*- .ad l .nh .SH NAME mdraw_text_per_char_extents \- .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 .PP Compute the text dimensions of each character of M\-text\&. 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\&. .PP \fBarray_size .ft R specifies the size of .ft B ink_array_return .ft R and .ft B logical_array_return\fP\&. 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_return\fP\&. .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\&. 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\&. .PP If .ft B control\->two_dimensional .ft R is nonzero, this function computes only the metrics of characters in the first line\&. .br .SH COPYRIGHT Copyright (C) 2001 Information\-technology Promotion Agency (IPA) .br Copyright (C) 2001\-2011 National Institute of Advanced Industrial Science and Technology (AIST) .br Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License .