diff options
Diffstat (limited to 'skia/include/SkTextBox.h')
-rw-r--r-- | skia/include/SkTextBox.h | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/skia/include/SkTextBox.h b/skia/include/SkTextBox.h deleted file mode 100644 index 2c34448..0000000 --- a/skia/include/SkTextBox.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (C) 2006 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SkTextBox_DEFINED -#define SkTextBox_DEFINED - -#include "SkCanvas.h" - -/** \class SkTextBox - - SkTextBox is a helper class for drawing 1 or more lines of text - within a rectangle. The textbox is positioned and clipped by its Frame. - The Margin rectangle controls where the text is drawn relative to - the Frame. Line-breaks occur inside the Margin rectangle. - - Spacing is a linear equation used to compute the distance between lines - of text. Spacing consists of two scalars: mul and add, and the spacing - between lines is computed as: spacing = paint.getTextSize() * mul + add -*/ -class SkTextBox { -public: - SkTextBox(); - - enum Mode { - kOneLine_Mode, - kLineBreak_Mode, - - kModeCount - }; - Mode getMode() const { return (Mode)fMode; } - void setMode(Mode); - - enum SpacingAlign { - kStart_SpacingAlign, - kCenter_SpacingAlign, - kEnd_SpacingAlign, - - kSpacingAlignCount - }; - SpacingAlign getSpacingAlign() const { return (SpacingAlign)fSpacingAlign; } - void setSpacingAlign(SpacingAlign); - - void getBox(SkRect*) const; - void setBox(const SkRect&); - void setBox(SkScalar left, SkScalar top, SkScalar right, SkScalar bottom); - - void getSpacing(SkScalar* mul, SkScalar* add) const; - void setSpacing(SkScalar mul, SkScalar add); - - void draw(SkCanvas*, const char text[], size_t len, const SkPaint&); - -private: - SkRect fBox; - SkScalar fSpacingMul, fSpacingAdd; - uint8_t fMode, fSpacingAlign; -}; - -class SkTextLineBreaker { -public: - static int CountLines(const char text[], size_t len, const SkPaint&, SkScalar width); -}; - -#endif - |