Name Description Size
SkDebug_android.cpp 894
SkDebug_stdio.cpp 734
SkDebug_win.cpp 795
SkDiscardableMemory_none.cpp 413
SkFontConfigInterface.cpp 1289
SkFontConfigInterface_direct.cpp migrated from chrome/src/skia/ext/SkFontHost_fontconfig_direct.cpp 23713
SkFontConfigInterface_direct.h migrated from chrome/src/skia/ext/SkFontHost_fontconfig_direct.cpp 1410
SkFontConfigInterface_direct_factory.cpp 486
SkFontConfigTypeface.h 2269
SkFontHost_cairo.cpp 22299
SkFontHost_FreeType.cpp 88415
SkFontHost_FreeType_common.cpp Copies a FT_Bitmap into an SkMask with the same dimensions. FT_PIXEL_MODE_MONO FT_PIXEL_MODE_GRAY FT_PIXEL_MODE_LCD FT_PIXEL_MODE_LCD_V 89735
SkFontHost_FreeType_common.h Computes a bounding box for a COLRv1 glyph. This method may change the configured size and transforms on FT_Face. Make sure to configure size, matrix and load glyphs as needed after using this function to restore the state of FT_Face. 2492
SkFontHost_win.cpp 86234
SkFontMgr_android.cpp 20392
SkFontMgr_android_parser.cpp This file contains TWO 'familyset' handlers: One for JB and earlier which works with /system/etc/system_fonts.xml /system/etc/fallback_fonts.xml /vendor/etc/fallback_fonts.xml /system/etc/fallback_fonts-XX.xml /vendor/etc/fallback_fonts-XX.xml and the other for LMP and later which works with /system/etc/fonts.xml If the 'familyset' 'version' attribute is 21 or higher the LMP parser is used, otherwise the JB. 34853
SkFontMgr_android_parser.h \class SkLanguage The SkLanguage class represents a human written language, and is used by text draw operations to determine which glyph to draw when drawing characters with variants (ie Han-derived characters). 6943
SkFontMgr_custom.cpp 7693
SkFontMgr_custom.h The base SkTypeface implementation for the custom font manager. 5027
SkFontMgr_custom_directory.cpp 4833
SkFontMgr_custom_embedded.cpp 5194
SkFontMgr_custom_empty.cpp 851
SkFontMgr_fontations_empty.cpp 2456
SkFontMgr_fontations_empty.h SkFontMgr_Fontations_Empty A SkFontMgr with an empty list of fonts, meant as a basic tool for font instantiation from data in testing, see TestFontMgr in FontToolUtils. 2225
SkFontMgr_fontconfig.cpp Since FontConfig is poorly documented, this gives a high level overview: FcConfig is a handle to a FontConfig configuration instance. Each 'configuration' is independent from any others which may exist. There exists a default global configuration which is created and destroyed by FcInit and FcFini, but this default should not normally be used. Instead, one should use FcConfigCreate and FcInit* to have a named local state. FcPatterns are {objectName -> [element]} (maps from object names to a list of elements). Each element is some internal data plus an FcValue which is a variant (a union with a type tag). Lists of elements are not typed, except by convention. Any collection of FcValues must be assumed to be heterogeneous by the code, but the code need not do anything particularly interesting if the values go against convention. Somewhat like DirectWrite, FontConfig supports synthetics through FC_EMBOLDEN and FC_MATRIX. Like all synthetic information, such information must be passed with the font data. 38201
SkFontMgr_FontConfigInterface.cpp Pointer to just after the last field of this class. 9931
SkFontMgr_fuchsia.cpp 21262
SkFontMgr_mac_ct.cpp Creates a typeface from a descriptor, searching the cache. 21080
SkFontMgr_win_dw.cpp localeNameLength and defaultFamilyNameLength must include the null terminator. 36073
SkFontScanner_fontations.cpp 3189
SkFontScanner_fontations.h 1341
SkGlobalInitialization_default.cpp Register most effects for deserialization. None of these are strictly required for Skia to operate, so if you're not using deserialization yourself, you can define SK_DISABLE_EFFECT_SERIALIZATION, or modify/replace this file as needed. 2162
SkImageEncoder_NDK.cpp 5403
SkImageGenerator_none.cpp 231
SkImageGenerator_skia.cpp 231
SkImageGeneratorCG.cpp 5392
SkImageGeneratorNDK.cpp 8823
SkImageGeneratorWIC.cpp Takes ownership of the imagingFactory Takes ownership of the imageSource 7406
SkMemory_malloc.cpp TODO: After b/169449588 is fixed, we will want to change this to restore original behavior instead of always disabling the flag. TODO: After b/158870657 is fixed and scudo is used globally, we can assert when an an error is returned. 4214
SkMemory_mozalloc.cpp 1288
SkNDKConversions.cpp 3974
SkNDKConversions.h 811
SkOSFile_ios.h allocator= 1950
SkOSFile_posix.cpp 5491
SkOSFile_stdio.cpp 4062
SkOSFile_win.cpp 7785
SkOSLibrary.h 376
SkOSLibrary_posix.cpp 596
SkOSLibrary_win.cpp 658
SkRemotableFontMgr_win_dw.cpp localeNameLength must include the null terminator. 16947
SkScalerContext_mac_ct.cpp 31617
SkScalerContext_mac_ct.h Unrotated variant of fCTFont. In 10.10.1 CTFontGetAdvancesForGlyphs applies the font transform to the width of the advances, but always sets the height to 0. This font is used to get the advances of the unrotated glyph, and then the rotation is applied separately. CT vertical metrics are pre-rotated (in em space, before transform) 90deg clock-wise. This makes kCTFontOrientationDefault dangerous, because the metrics from kCTFontOrientationHorizontal are in a different space from kCTFontOrientationVertical. With kCTFontOrientationVertical the advances must be unrotated. Sometimes, creating a copy of a CTFont with the same size but different trasform will select different underlying font data. As a result, avoid ever creating more than one CTFont per SkScalerContext to ensure that only one CTFont is used. As a result of the above (and other constraints) this font contains the size, but not the transform. The transform must always be applied separately. 3531
SkScalerContext_win_dw.cpp Note: In versions 8 and 8.1 of Windows, some calls in DWrite are not thread safe. The mutex returned from maybe_dw_mutex protects the calls that are problematic. 102335
SkScalerContext_win_dw.h The total matrix without the text height scale. 4406
SkTypeface_fontations.cpp 64045
SkTypeface_fontations_priv.h Implementation of PathWrapper FFI C++ interface which allows Rust to call back into C++ without exposing Skia types on the interface, see skpath_bridge.h. 12939
SkTypeface_FreeType.h Fetch units/EM from "head" table if needed (ie for bitmap fonts) 5729
SkTypeface_mac_ct.cpp Assumes src and dst are not nullptr. 57335
SkTypeface_mac_ct.h CTFontCopyVariationAxes provides the localized name of all axes, making it very slow. This is unfortunate, its result is needed just to see if there are any axes at all. To avoid calling internal APIs cache the result of CTFontCopyVariationAxes. https://github.com/WebKit/WebKit/commit/1842365d413ed87868e7d33d4fad1691fa3a8129 https://bugs.webkit.org/show_bug.cgi?id=232690 5488
SkTypeface_win_dw.cpp 42119
SkTypeface_win_dw.h dwrite_3.h incorrectly uses NTDDI_VERSION to hide immutable interfaces (it should only be used to gate changes to public ABI). The implementation files can (and must) get away with including SkDWriteNTDDI_VERSION.h which simply unsets NTDDI_VERSION, but this doesn't work well for this header which can be included in SkTypeface.cpp. Instead, ensure that any declarations hidden behind the NTDDI_VERSION are forward (backward?) declared here in case dwrite_3.h did not declare them. 8582