Core Textコアテキスト
コアテキスト概要
- advanced, low-level technology テキストレイアウトとフォントハンドリングのための
- 設計方針「ハイパフォーマンス」&「使い勝手」, CoreTextのレイアウトエンジンはATSUIの2倍速??
- CoreTextのレイアウトAPI「単純」「一貫性」「Core Foundation, Core Graphics, Cocoaとの密接な統合」
- CoreTextのフォントAPI=レイアウトエンジンと相互補完
- CoreTextのフォント技術=「ユニコードフォントをネイティブに取り扱える」=「CarbonとCocoaのフォント参照の差を橋渡しする」+「レイアウトのための効率的なフォントハンドリングを提供する」ように設計済み
- 「性能」+「密着」の設計 ココアのテキストとフォント
設計の最終目標と原則
CoreTextは次のような利点をもたらすように設計された
- 「包括的統合(CoreText一個あれば全て揃ってる)」「テキストレイアウトAPIとフォントAPIのセットが」
- 「高性能」+「使い易さ」
- Cocoa, Core Foundation, Core Graphics(Quartz)との密接な調和・融合
- ネイティブユニコードハンドリング
- 64-bitアプリケーションサポート
- 「すっきりと(見通しの良い)」+「かんたんな(シンプル)」+「一貫した」APIデザイン
- レイアウトやグリフデータに対して、フレキシブルなインターフェース
- シンプルインターフェース+シンプルオペレーション
- 「コスト予測可能な構成」+「負担の合理的な分割」
コアテキストレイアウトの設計目標の第一は、単純なものでかんたんにできること。
例えば、テキストの段落とか単純なテキストラベルをスクリーンに描画したいときに、
コードをいっぱい書くなんてことはしたくないでしょう。
以下略
特徴と性能
コアテキストは、テキストレイアウトとフォントアクセスをやります。
テキストレイアウトエンジンは、キャラクタからグリフを生成し、グリフランとか行とか複数行フレームとかの中にグリフを配置、位置決めしていきます。
Link
- Creating Fonts
- CTFont::Create(name)
- CTFont::Create(name, options)
- CTFont::Create(font_descriptor)
- CTFont::CreateUIFontForLanguage()
- CTFont::CreateCopy(attributes)
- CTFont::CreateCopy(symbolicTraits)
- CTFont::CreateCopy(family)
- CTFont::CreateForString()
- Getting Font Data
- CTFont::CopyPostScriptName
- CTFont::CopyFamilyName
- CTFont::CopyFullName
- CTFont::CopyDisplayName
- CTFont::CopyName
- CTFont::CopyLocalizedName
- Working With Encoding
- CTFont::CopyCharacterSet
- CTFont::GetStringEncoding
- CTFont::SupportedLanguages
- CTFont::GetGlyphsForCharacters
- Getting Font Metrics
- CTFont::GetAscent
- CTFont::GetDescent
- CTFont::GetLeading
- CTFont::GetUnitsPerEm
- CTFont::GetGlyphCount
- CTFont::GetBoundingBox
- CTFont::GetUnderlinePosition
- CTFont::GetUnderlineThickness
- CTFont::GetSlantAngle
- CTFont::GetCapHeight
- CTFont::GetXHeight
- Getting Glyph Data
- CTFont::CreatePathForGlyph
- CTFont::GetGlyph(name)
- CTFont::GetBoundingRectsForGlyphs
- CTFont::GetAdvancesForGlyphs
- CTFont::GetVerticalTranslationsForGlyphs
- WorkingWithFontVariations
- CTFont::CopyVariationAxes
- CTFont::CopyVariation
- Getting Font Features
- CTFont::CopyFeatures
- CTFont::CopyFeatureSettings
- Converting Fonts
- CTFont::CopyGraphicsFont
- CTFont::CreateWithGraphicsFont
- CTFont::GetPlatformFont
- CTFont::Create(platform_font)
- CTFont::Create(quickdraw_instance)
- Getting Font Table Data
- CTFont::CopyAvailableTables
- CTFont::CopyTable
- Getting the Type Identifier
- Creating Font Collections
- CTFontCollection::CreateFromAvailableFonts
- CTFontCollection::Create(font_descriptors)
- CTFontCollection::CreateCopy(font_descriptors)
- Getting Font Descriptors
- CTFontCollection::CreateMatchingFontDescriptors
- CTFontCollection::CreateMatchingFontDescriptorsSorted(callback)
- CTFontCollection::CreateMatchingFontDescriptorsSortedWithCallback
- Getting the Type Identifier
- CTFontCollection::GetTypeID
- Creating Font Descriptors
- CTFontDescriptor::Create(name, size)
- CTFontDescriptor::Create(attributes)
- CTFontDescriptor::CreateCopy(attributes)
- CTFontDescriptor::CreateCopy(variation)
- CTFontDescriptor::CreateCopy(feature)
- CTFontDescriptor::CreateMatchingFontDescriptors
- CTFontDescriptor::CreateMatchingFontDescriptor
- Getting Attributes
- CTFontDescriptor::CopyAttributes
- CTFontDescriptor::CopyAttribute
- CTFontDescriptor::CopyLocalizedAttribute
- Getting the Font Descriptor Type
- CTFontDescriptor::GetTypeID
- Getting Frame Data
- CTFrame::GetStringRange
- CTFrame::GetVisibleStringRange
- CTFrame::GetPath
- CTFrame::GetFrameAttributes
- Getting Lines
- CTFrame::GetLines
- CTFrame::GetLineOrigins
- Drawing the Frame
- Getting the Type Identifier
- Creating a Framesetter
- CTFramesetter::Create(attributed_string)
- Creating Frames
- CTFramesetter::CreateFrame()
- CTFramesetter::GetTypesetter()
- Frame Sizing
- CTFramesetter::SuggestFrameSize(constants)
- Getting the Type Identifier
- Getting the GlyphInfo Type
- Creating GlyphInfo Objects
- CTGlyphInfo::Create(glyph_name)
- CTGlyphInfo::Create(glyph)
- CTGlyphInfo::Create(character_identifier)
- Getting GlyphInfo Data
- CTGlyphInfo::GetGlyphName
- CTGlyphInfo::GetCharacterIdentifier
- CTGlyphInfo::GetCharacterCollection
- Creating Lines
- CTLine::Create(attributed_string)
- CTLine::CreateTruncateLine
- CTLine::CreateJustifiedLine
- Drawing the Line
- Getting Line Data
- CTLine::GetGlyphCount
- CTLine::GetGlyphRuns
- CTLine::GetStringRange
- CTLine::GetPenOffsetForFlush
- Measuring Lines
- CTLine::GetImageBounds
- CTLine::GetTypographicBounds
- CTLine::GetTrailingWhitespaceWidth
- Getting Line Positioning
- CTLine::GetStringIndexForPosition
- CTLine::GetOffsetForStringIndex
- Getting the Type Identifier
- Creating Paragraph Style
- CTParagraphStyle::Create
- CTParagraphStyle::CreateCopy
- Getting the Value of a Style Specifier
- CTParagraphStyle::GetValueForSpecifier
- Getting the Type Identifier
- CTParagraphStyle::GetTypeID
- Getting Glyph Run Data
- CTRun::GetGlyphCount
- CTRun::GetAttributes
- CTRun::GetStatus
- CTRun::GetGlyphsPtr
- CTRun::GetGlyphs
- CTRun::GetPositionPtr
- CTRun::GetPositions
- CTRun::GetAdvancesPtr
- CTRun::GetAdvances
- CTRun::GetStringIndicesPtr
- CTRun::GetStringIndices
- CTRun::GetStringRange
- Measuring the Glyph Run
- CTRun::GetTypographicBounds
- CTRun::GetImageBounds
- Drawing the Glyph Run
- CTRun::Draw
- CTRun::GetTextMatrix
- Getting the Type Identifier
- Creating Text Tabs
- Getting Text Tab Data
- CTTextTab::GetAlignment
- CTTextTab::GetLocation
- CTTextTab::GetOptions
- Getting the Type Identifier
CTLine = CTTypesetter(attributed_string)
- Creating a Typesetter
- CTTypesetter::Create(attributed_string)
- CTTypesetter::Create(attributed_string, options)
- Creating Lines
- CTTypesetter::CreateLine()
- Breaking Lines
- CTTypesetter::SuggestLineBreak()
- CTTypesetter::SuggestClusterBreak()
- Getting the Type Identifier
- CTTypesetter::GetTypeID()
CTLine.runs =
[CTRun, CTRun, CTRun]
CTFrame.lines = [CTLine, CTLine, CTLine]
- CTFontManager
- CTFontManager::CopyAvailablePostScriptNames
- CTFontManager::CopyAvailableFontFamilyNames
- CTFontManager::CopyAvailableFontURLs
- CTFontManager::CompareFontFamilyNames
- Creating and Enabling Font Descriptors
- CTFontManager::CreateFontDescriptorsFromURL
- CTFontManager::EnableFontDescriptors
- Registering and Activating Fonts
- CTFontManager::RegisterFontsForURL
- CTFontManager::UnregisterFontsForURL
- CTFontManager::RegisterFontsForURLs
- CTFontManager::UnregisterFontsForURLs
- CTFontManager::SetAutoActivationSetting
- CTFontManager::GetAutoActivationSetting
- CTFontManager::GetScopeForURL
- Validating Font Files
- CTFontManager::IsSupportedFontFile
- CTFontManager::CreateFontRequestRunLoopSource
*
Link
最終更新:2010年06月13日 13:33