public double MeasureTextSize(string text, double width, double fontSize, string fontName = null)
		{
			var textView = new TextView(global::Android.App.Application.Context);
			textView.Typeface = GetTypeface(fontName);
			textView.SetText(text, TextView.BufferType.Normal);
			textView.SetTextSize(ComplexUnitType.Px, (float)fontSize);

			int widthMeasureSpec = AViews.View.MeasureSpec.MakeMeasureSpec(
				(int)width, AViews.MeasureSpecMode.AtMost);
			int heightMeasureSpec = AViews.View.MeasureSpec.MakeMeasureSpec(
				0, AViews.MeasureSpecMode.Unspecified);

			textView.Measure(widthMeasureSpec, heightMeasureSpec);

			return (double)textView.MeasuredHeight;
		}
Ejemplo n.º 2
0
 public Size TextExtents(string text, TextOptions options)
 {
     TextView view = new TextView (Context);
     view.Text = text;
     view.Measure (0, 0);
     return new Size (view.MeasuredWidth, view.MeasuredHeight);
 }