[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39094] trunk/blender/source/blender/ editors/interface/interface_style.c: for UI text drawing use BLF_ascender( fs->uifont_id) rather then BLF_height(fs->uifont_id, "2"), while profiling draw noticed that the hash lookup on the character and utf8 next were being called on every text draw , use BLF_ascender since it doesn't do any lookups.
Campbell Barton
ideasman42 at gmail.com
Sat Aug 6 08:38:19 CEST 2011
Revision: 39094
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39094
Author: campbellbarton
Date: 2011-08-06 06:38:18 +0000 (Sat, 06 Aug 2011)
Log Message:
-----------
for UI text drawing use BLF_ascender(fs->uifont_id) rather then BLF_height(fs->uifont_id, "2"), while profiling draw noticed that the hash lookup on the character and utf8 next were being called on every text draw, use BLF_ascender since it doesn't do any lookups.
Modified Paths:
--------------
trunk/blender/source/blender/editors/interface/interface_style.c
Modified: trunk/blender/source/blender/editors/interface/interface_style.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_style.c 2011-08-06 06:11:31 UTC (rev 39093)
+++ trunk/blender/source/blender/editors/interface/interface_style.c 2011-08-06 06:38:18 UTC (rev 39094)
@@ -149,10 +149,10 @@
int xofs=0, yofs;
uiStyleFontSet(fs);
-
- height= BLF_height(fs->uifont_id, "2"); /* correct offset is on baseline, the j is below that */
- yofs= floor( 0.5f*(rect->ymax - rect->ymin - height));
+ height= BLF_ascender(fs->uifont_id);
+ yofs= ceil( 0.5f*(rect->ymax - rect->ymin - height));
+
if(fs->align==UI_STYLE_TEXT_CENTER) {
xofs= floor( 0.5f*(rect->xmax - rect->xmin - BLF_width(fs->uifont_id, str)));
/* don't center text if it chops off the start of the text, 2 gives some margin */
@@ -206,9 +206,9 @@
uiStyleFontSet(fs);
- height= BLF_height(fs->uifont_id, "2"); /* correct offset is on baseline, the j is below that */
+ height= BLF_ascender(fs->uifont_id);
/* becomes x-offset when rotated */
- xofs= floor( 0.5f*(rect->ymax - rect->ymin - height)) + 1;
+ xofs= ceil( 0.5f*(rect->ymax - rect->ymin - height));
/* ignore UI_STYLE, always aligned to top */
More information about the Bf-blender-cvs
mailing list