stringbox - Compute the bounding rectangle of a text or a label.
stringbox returns the bounding rectangle vertices of a text or label object or a string which will be displayed with a certain way. the coordinates are given with the current graphic scale. the first vertex correspond to the text coordinates (x,y), the lower left point without rotation, the following vertex are given clockwise in the resulting matrix.
The result migth not be very accurate with PostScript driver.
// show axes axes = gca() ; axes.axes_visible = 'on' ; axes.data_bounds = [ 1, 1 ; 10, 10 ] ; // display a labels for axes xtitle( 'stringbox', 'X', 'Y' ) ; // get the bounding box of X label stringbox( axes.x_label ) // draw a string str = [ "Scilab", "is" , "not", "Skylab" ] ; xstring( 4, 9, str ) ; //modify the text e = gce() ; e.font_angle = 90 ; e.font_size = 6 ; e.font_style = 7 ; e.box = 'on' ; // get its bounding box stringbox( e ) // or rect = stringbox( str, 4, 9, 90, 6, 5 ) // click and find if the text was hit hit = xclick() ; hit = hit( 2 : 3 ) ; if hit(1) >= rect(1,1) & hit(1) <= rect(1,2) & hit(2) <= rect(2,2) & hit(2) >= rect(2,3) then disp('You hit the text.') ; else disp('You missed it.') end;
Jean-Baptiste Silvy