Поделиться через


LineBreaker Класс

Определение

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

[Android.Runtime.Register("android/graphics/text/LineBreaker", ApiSince=29, DoNotGenerateAcw=true)]
public class LineBreaker : Java.Lang.Object
[<Android.Runtime.Register("android/graphics/text/LineBreaker", ApiSince=29, DoNotGenerateAcw=true)>]
type LineBreaker = class
    inherit Object
Наследование
LineBreaker
Атрибуты

Комментарии

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

<code>
            Paint paint = new Paint();
            Paint bigPaint = new Paint();
            bigPaint.setTextSize(paint.getTextSize() * 2.0);
            String text = "Hello, Android.";

            // Prepare the measured text
            MeasuredText mt = new MeasuredText.Builder(text.toCharArray())
                .appendStyleRun(paint, 7, false)  // Use paint for "Hello, "
                .appednStyleRun(bigPaint, 8, false)  // Use bigPaint for "Hello, "
                .build();

            LineBreaker lb = new LineBreaker.Builder()
                // Use simple line breaker
                .setBreakStrategy(LineBreaker.BREAK_STRATEGY_SIMPLE)
                // Do not add hyphenation.
                .setHyphenationFrequency(LineBreaker.HYPHENATION_FREQUENCY_NONE)
                // Build the LineBreaker
                .build();

            ParagraphConstraints c = new ParagraphConstraints();
            c.setWidth(240);  // Set the line wieth as 1024px

            // Do the line breaking
            Result r = lb.computeLineBreaks(mt, c, 0);

            // Compute the total height of the text.
            float totalHeight = 0;
            for (int i = 0; i < r.getLineCount(); ++i) {  // iterate over the lines
               totalHeight += r.getLineDescent(i) - r.getLineAscent(i);
            }

            // Draw text to the canvas
            Bitmap bmp = Bitmap.createBitmap(240, totalHeight, Bitmap.Config.ARGB_8888);
            Canvas c = new Canvas(bmp);
            float yOffset = 0f;
            int prevOffset = 0;
            for (int i = 0; i < r.getLineCount(); ++i) {  // iterate over the lines
                int nextOffset = r.getLineBreakOffset(i);
                c.drawText(text, prevOffset, nextOffset, 0f, yOffset, paint);

                prevOffset = nextOffset;
                yOffset += r.getLineDescent(i) - r.getLineAscent(i);
            }
</code>

</p>

Документация по Java для android.graphics.text.LineBreaker.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Конструкторы

LineBreaker(IntPtr, JniHandleOwnership)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

Поля

BreakStrategyBalanced
Устаревшие..

Значение стратегии останова, указывающее на нарушение сбалансированной линии.

BreakStrategyHighQuality
Устаревшие..

Значение стратегии останова, указывающей на нарушение высококачественной линии.

BreakStrategySimple
Устаревшие..

Значение стратегии останова, указывающее на простое разрыв строки.

HyphenationFrequencyFull
Устаревшие..

Значение частоты дефисации, указывающее полный объем автоматической дефисации.

HyphenationFrequencyNone
Устаревшие..

Значение частоты дефисации, указывающее на отсутствие автоматического дефиса.

HyphenationFrequencyNormal
Устаревшие..

Значение частоты дефисации, указывающее легкий объем автоматической дефисации.

JustificationModeInterWord
Устаревшие..

Значение для режима обоснования, указывающее, что текст оправдан путем растяжения интервалов слов.

JustificationModeNone
Устаревшие..

Значение для режима обоснования, указывающее отсутствие оправдания.

Свойства

Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
JniPeerMembers

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

PeerReference

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
ThresholdClass

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

ThresholdType

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

Методы

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
ComputeLineBreaks(MeasuredText, LineBreaker+ParagraphConstraints, Int32)

Разбить абзац на строки.

Dispose()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
Dispose(Boolean)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
JavaFinalize()

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Notify()

Пробуждение одного потока, ожидающего монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>.

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.Finalized()

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

GetJniTypeName(IJavaPeerable)

Предоставляет автоматическое нарушение строк для абзаца <em>single</em> .

Применяется к