get_x_ranges


Description:

public void get_x_ranges (int start_index, int end_index, out int[] ranges)

Gets a list of visual ranges corresponding to a given logical range.

This list is not necessarily minimal - there may be consecutive ranges which are adjacent. The ranges will be sorted from left to right. The ranges are with respect to the left edge of the entire layout, not with respect to the line.

Parameters:

this

a `PangoLayoutLine`

start_index

Start byte index of the logical range. If this value is less than the start index for the line, then the first range will extend all the way to the leading edge of the layout. Otherwise, it will start at the leading edge of the first character.

end_index

Ending byte index of the logical range. If this value is greater than the end index for the line, then the last range will extend all the way to the trailing edge of the layout. Otherwise, it will end at the trailing edge of the last character.

ranges

location to store a pointer to an array of ranges. The array will be of length `2*n_ranges`, with each range starting at `(*ranges)[2*n ]` and of width `(*ranges)[2*n + 1] - (*ranges)[2*n]`. This array must be freed with g_free. The coordinates are relative to the layout and are in Pango units.

n_ranges

The number of ranges stored in ranges