LineBreaker 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供 em> 單<一/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
- 繼承
- 屬性
備註
提供 em> 單<一/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>
的 android.graphics.text.LineBreaker
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
LineBreaker(IntPtr, JniHandleOwnership) |
提供 em> 單<一/em> 段落的<自動斷行。 |
欄位
BreakStrategyBalanced |
已淘汰.
表示平衡換行之中斷策略的值。 |
BreakStrategyHighQuality |
已淘汰.
中斷策略的值,表示高品質的中斷行。 |
BreakStrategySimple |
已淘汰.
中斷策略的值,指出簡單的中斷行。 |
HyphenationFrequencyFull |
已淘汰.
斷字頻率的值,指出自動斷字的完整量。 |
HyphenationFrequencyNone |
已淘汰.
斷字頻率的值,表示沒有自動斷字。 |
HyphenationFrequencyNormal |
已淘汰.
斷字頻率的值,表示輕量自動斷字。 |
JustificationModeInterWord |
已淘汰.
對齊模式的值,指出文字是靠延展字距來對齊的。 |
JustificationModeNone |
已淘汰.
理由模式的值,表示沒有理由。 |
屬性
Class |
傳回這個 |
Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
JniIdentityHashCode |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
JniPeerMembers |
提供 em> 單<一/em> 段落的<自動斷行。 |
PeerReference |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
ThresholdClass |
提供 em> 單<一/em> 段落的<自動斷行。 |
ThresholdType |
提供 em> 單<一/em> 段落的<自動斷行。 |
方法
Clone() |
建立並傳回這個 對象的複本。 (繼承來源 Object) |
ComputeLineBreaks(MeasuredText, LineBreaker+ParagraphConstraints, Int32) |
將段落分成幾行。 |
Dispose() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
Dispose(Boolean) |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
JavaFinalize() |
當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。 (繼承來源 Object) |
Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
ToArray<T>() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
Wait() |
讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<> (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
Wait(Int64) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.Finalized() |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.JniManagedPeerState |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
提供 em> 單<一/em> 段落的<自動斷行。 (繼承來源 Object) |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
提供 em> 單<一/em> 段落的<自動斷行。 |
GetJniTypeName(IJavaPeerable) |
提供 em> 單<一/em> 段落的<自動斷行。 |