1
$\begingroup$

As this code,we can visualize the "Test text"

Graphics[Text[Style["Test text",20],{0,0}],Axes->True,AxesOrigin->{0,0}]

I try to use DiscretizeGraphics to get the width and length of "Test text".

Abs[Subtract@@@RegionBounds[DiscretizeGraphics[Text[Style["Test text",20],{0,0}],_Text]]]

{75.6577,8.49565}

The result is unexpected obviously.

Question

  1. Is this a bug of DiscretizeGraphics?
  2. Can any solution get the width and length of "Test text"?
$\endgroup$
  • $\begingroup$ Isn't the problem that the RegionBounds aren't set? If you inscribe the text in a Circle[{0, 0}, {i, j}], within the same Graphics[], the text doesn't change in size if you change the radii of the circle. $\endgroup$ – Feyre Jul 1 '16 at 11:57
  • $\begingroup$ @Feyre I think this isn't the problem of RegionBounds,If your click <kbd>.</kbd> then move your cusor to right bottom of the "Test text",you can see the coordinate like this. $\endgroup$ – yode Jul 1 '16 at 12:06
  • $\begingroup$ But those are the bounds of the meshregion you've created. $\endgroup$ – Feyre Jul 1 '16 at 12:10
4
$\begingroup$

Text does not scale with the ImageSize. Try to manually resize graphics containing text (by dragging the handle). The text will not change size. Text size is given in absolute units.

To get the dimension of text in absolute units (which is distinct from the Graphics coordinate system), use Rasterize[..., "RasterSize"]. If you use "BoundingBox" instead of "RasterSize", it will also give you the baseline position.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.