Mercurial > boomslang
diff pyntnclick/resources.py @ 638:d1ec9e739e23 pyntnclick
Make TextWidget work (probably)
author | Stefano Rivera <stefano@rivera.za.net> |
---|---|
date | Sun, 12 Feb 2012 01:27:53 +0200 |
parents | 85153f422522 |
children | 43b49f1de828 |
line wrap: on
line diff
--- a/pyntnclick/resources.py Sun Feb 12 00:59:49 2012 +0200 +++ b/pyntnclick/resources.py Sun Feb 12 01:27:53 2012 +0200 @@ -25,6 +25,7 @@ self.resource_module = resource_module self.language = language self._image_cache = {} + self._font_cache = {} self._transformed_image_cache = {} def get_resource_path(self, *resource_path_fragments): @@ -96,3 +97,13 @@ self._transformed_image_cache[key] = image return image + + def get_font(self, file_name, font_size, basedir=None): + """Load a a font, cached if possible.""" + if basedir is None: + basedir = 'fonts' + key = (basedir, file_name, font_size) + if key not in self._font_cache: + fontfn = self.get_resource_path(basedir, file_name) + self._font_cache[key] = pygame.font.Font(fontfn, font_size) + return self._font_cache[key]