}
row[t] = sum;
}
+ free(filter);
for(t=from;t<=to;t++) {
if(row[t]>max1) {
if(num<=1) {
*_x1=x1;
} else {
+ /* this code is slightly wrong, in that it assumes that the glyph distortion problem
+ gets worse when the font sizes get smaller. it doesn't. in fact, the smaller
+ the font size, the more of the scaling bugs disappear (http://www.quiss.org/files/scaletest.swf)
+ A better way would probably to use the font size you need for the two alignzones
+ to come to lie in different pixels, which what I think is what makes the problems
+ appear/disappear.
+ */
+
double scale = min_size/1024.0;
for(t=from;t<=to;t++) {
if(t==x1) {
*_x2=x2;
}
-
free(row);
}
f->alignzones = (ALIGNZONE*)rfx_calloc(sizeof(ALIGNZONE)*f->numchars);
f->alignzone_flags = FONTALIGN_MEDIUM;
- if(!f->layout) {
+ if(!f->layout || !f->use) {
int t;
for(t=0;t<f->numchars;t++) {
// just align the baseline
negate_y(&b);
f->alignzones[t] = detect_for_char(f, t, row, column, bounds, b);
}
+ free(row);
+ free(column_global);
+ free(column);
}
}