GpStatus WINGDIPAPI GdipCreateFontFamilyFromName(GDIPCONST WCHAR *name, GpFontCollection *fontCollection, GpFontFamily **FontFamily) { GpFontFamily* ffamily; NEWTEXTMETRICW ntm; TRACE("%s, %p %p\n", debugstr_w(name), fontCollection, FontFamily); if (!(name && FontFamily)) return InvalidParameter; if (fontCollection) FIXME("No support for FontCollections yet!\n"); if (!find_installed_font(name, &ntm)) return FontFamilyNotFound; ffamily = GdipAlloc(sizeof (GpFontFamily)); if (!ffamily) return OutOfMemory; ffamily->tmw = ntm; lstrcpynW(ffamily->FamilyName, name, LF_FACESIZE); *FontFamily = ffamily; TRACE("<-- %p\n", ffamily); return Ok; }
GpStatus WINGDIPAPI GdipCreateFontFamilyFromName(GDIPCONST WCHAR *name, GpFontCollection *fontCollection, GpFontFamily **FontFamily) { GpStatus stat; GpFontFamily* ffamily; struct font_metrics fm; TRACE("%s, %p %p\n", debugstr_w(name), fontCollection, FontFamily); if (!(name && FontFamily)) return InvalidParameter; if (fontCollection) FIXME("No support for FontCollections yet!\n"); stat = find_installed_font(name, &fm); if (stat != Ok) return stat; ffamily = GdipAlloc(sizeof (GpFontFamily)); if (!ffamily) return OutOfMemory; lstrcpynW(ffamily->FamilyName, name, LF_FACESIZE); ffamily->em_height = fm.em_height; ffamily->ascent = fm.ascent; ffamily->descent = fm.descent; ffamily->line_spacing = fm.line_spacing; ffamily->dpi = fm.dpi; *FontFamily = ffamily; TRACE("<-- %p\n", ffamily); return Ok; }