From 78857a151db64900808b5c7bfc2573817ab7cc5b Mon Sep 17 00:00:00 2001 From: "reed@android.com" Date: Tue, 18 May 2010 21:17:43 +0000 Subject: export line counts git-svn-id: http://skia.googlecode.com/svn/trunk/src@568 2bbb7eff-a529-9590-31e7-b0007b416f81 --- views/SkTextBox.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'views') diff --git a/views/SkTextBox.cpp b/views/SkTextBox.cpp index 8bc82f38..df7de986 100644 --- a/views/SkTextBox.cpp +++ b/views/SkTextBox.cpp @@ -214,3 +214,24 @@ void SkTextBox::draw(SkCanvas* canvas, const char text[], size_t len, const SkPa } } +/////////////////////////////////////////////////////////////////////////////// + +void SkTextBox::setText(const char text[], size_t len, const SkPaint& paint) { + fText = text; + fLen = len; + fPaint = &paint; +} + +void SkTextBox::draw(SkCanvas* canvas) { + this->draw(canvas, fText, fLen, *fPaint); +} + +int SkTextBox::countLines() const { + return SkTextLineBreaker::CountLines(fText, fLen, *fPaint, fBox.width()); +} + +SkScalar SkTextBox::getTextHeight() const { + SkScalar spacing = SkScalarMul(fPaint->getTextSize(), fSpacingMul) + fSpacingAdd; + return this->countLines() * spacing; +} + -- cgit v1.2.3