UIFont 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
UIKit 類別的字型表示法。
[Foundation.Register("UIFont", true)]
public class UIFont : Foundation.NSObject, Foundation.INSCopying, Foundation.INSSecureCoding, IDisposable
[<Foundation.Register("UIFont", true)>]
type UIFont = class
inherit NSObject
interface INSCoding
interface INativeObject
interface IDisposable
interface INSCopying
interface INSSecureCoding
- 繼承
- 屬性
- 實作
備註
UIFont 物件並非直接實例化,而是由此類別上的靜態方法建立。 你可以使用 PreferredBody, PreferredCaption1, PreferredCaption2, PreferredHeadline, 屬性 PreferredSubheadline 來取得對應使用情境的首選系統字型。
使用靜態 FromName(String, NFloat) 方法來建立特定字型的新字型。
你可以利用這個 FamilyNames 屬性取得所有可用字型名稱的清單,然後了解如何 FontNamesForFamilyName(String) 取得特定字型家族中可用字型的清單。
系統資訊與字型
若要取得代表系統字型的正常、斜體或粗體字型,請使用靜態方法 SystemFontOfSize(NFloat, UIFontWeight)、 和 ItalicSystemFontOfSize(NFloat)BoldSystemFontOfSize(NFloat)。
啟動排版功能
你可以利用字型描述符,根據現有的字型實例取得新字型。 要做到這點,你從字型取得不可變 FontDescriptor 屬性,並用它建立一個新的字型描述符,裡面有你想要的修改,然後你可以用這個描述符傳到 FromDescriptor(UIFontDescriptor, NFloat) 建立修改後字型的方法。
以下範例展示了如何修改現有字型,以啟用 CoreText 的比例數字排版功能,並使用字元替代:
UIFont CustomizeFont (UIFont font)
{
var originalDescriptor = font.FontDescriptor;
// This font has a character alternative, at index 1, use that:
const int characterAlternative = 1;
var attributes = new UIFontAttributes (
new UIFontFeature (CTFontFeatureNumberSpacing.Selector.ProportionalNumbers),
new UIFontFeature (characterAlternative));
var newDesc = originalDescriptor.CreateWithAttributes (attributes);
return UIFont.FromDescriptor (newDesc, 80);
}
字型的字元覆蓋範圍限制
以下範例透過修改字型描述符所支援的字元集,並強制系統使用系統中備用字型清單中的字形。 例如,若使用 Menlo 字型,以下範例將移除 Melon Snowman 字元(在 Unicode 0x2603),並回歸系統雪人字元:
var label = new UILabel (new CGRect (0, 300, 200, 100)) {
Text = "Hello \u2603 there!",
TextColor = UIColor.White,
Font = MyFonts.Menlo
};
var originalDescriptor = label.Font.FontDescriptor;
var originalCharSet = originalDescriptor.CharacterSet;
// Make a copy of the character set to modify
var charSetCopy = originalCharSet.MutableCopy () as NSMutableCharacterSet;
// Remove the snowman
charSetCopy.RemoveCharacters (new NSRange (0x2603, 1));
// Create new descriptor
var removedSnowmanDescriptor = originalDescriptor.CreateWithAttributes (new UIFontAttributes () {
CharacterSet = originalCharSet
});
// Create the font and set it on our label
label.Font = UIFont.FromDescriptor (removedSnowmanDescriptor, 0);
這個類別的成員可以從背景執行緒中使用。
建構函式
| 名稱 | Description |
|---|---|
| UIFont(NativeHandle) |
一種用於建立未受管理物件的受管理表示的建構器。 由執行時呼叫。 |
| UIFont(NSCoder) |
一個建構器,能從未封存物件中儲存的資料初始化物件。 |
| UIFont(NSObjectFlag) |
用來呼叫衍生類別跳過初始化,僅僅配置物件。 |
屬性
| 名稱 | Description |
|---|---|
| AccessibilityAttributedUserInputLabels |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| AccessibilityRespondsToUserInteraction |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| AccessibilityTextualContext |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| AccessibilityUserInputLabels |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| Ascender |
UIKit 類別的字型表示法。 |
| ButtonFontSize |
UIKit 類別的字型表示法。 |
| CapHeight |
UIKit 類別的字型表示法。 |
| Class |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| ClassHandle |
Objective-C 類別是這個類別的處理方式。 |
| DebugDescription |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| Descender |
UIKit 類別的字型表示法。 |
| Description |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| FamilyName |
UIKit 類別的字型表示法。 |
| FamilyNames |
UIKit 類別的字型表示法。 |
| FontDescriptor |
UIKit 類別的字型表示法。 |
| Handle |
Handle(指標)指向未管理物件表示。 (繼承來源 NSObject) |
| IsDirectBinding |
取得或設定一個值,指示此實例是否使用直接 Objective-C 綁定。 (繼承來源 NSObject) |
| IsProxy |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| LabelFontSize |
UIKit 類別的字型表示法。 |
| Leading |
UIKit 類別的字型表示法。 |
| LineHeight |
UIKit 類別的字型表示法。 |
| Name |
UIKit 類別的字型表示法。 |
| PointSize |
UIKit 類別的字型表示法。 |
| PreferredBody |
正文格式的首選 UIFont 。 |
| PreferredCallout |
這是 Callout 文字風格的首選 UIFont 。 |
| PreferredCaption1 |
這是 Caption1 文字風格的首選 UIFont 。 |
| PreferredCaption2 |
首選 UIFont 的 Caption2 文字風格。 |
| PreferredFootnote |
這是腳註文字風格的首選 UIFont 。 |
| PreferredHeadline |
標題文字風格的首選 UIFont 。 |
| PreferredSubheadline |
副標題文字風格的首選 UIFont 。 |
| PreferredTitle1 |
這是 Title1 文字風格的首選 UIFont 。 |
| PreferredTitle2 |
這是 Title2 文字風格的首選 UIFont 。 |
| PreferredTitle3 |
這是 Title3 文字風格的首選 UIFont 。 |
| RetainCount |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| Self |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| SmallSystemFontSize |
UIKit 類別的字型表示法。 |
| Superclass |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
| SuperHandle |
用 handle 表示此 NSObject基底類別中的方法。 (繼承來源 NSObject) |
| SystemFontSize |
UIKit 類別的字型表示法。 |
| xHeight |
已淘汰.
小寫「x」的大小,以點數計。 |
| XHeight |
UIKit 類別的字型表示法。 |
| Zone |
UIKit 類別的字型表示法。 (繼承來源 NSObject) |
方法
運算子
| 名稱 | Description |
|---|---|
| Equality(UIFont, UIFont) |
比較兩個 UIFont 物件以求價值平等。 |
| Inequality(UIFont, UIFont) |
比較兩個 UIFont 物件以判斷價值不平等。 |