mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-14 02:27:39 -04:00
Applied patch 1342470: Support fonts wider than 16 pixels in convbdf.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7874 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
3b0e8f89ab
commit
a199aef53a
1 changed files with 7 additions and 10 deletions
|
@ -528,11 +528,6 @@ int bdf_read_bitmaps(FILE *fp, struct font* pf)
|
||||||
maxwidth = width;
|
maxwidth = width;
|
||||||
pf->width[encoding-pf->firstchar] = width;
|
pf->width[encoding-pf->firstchar] = width;
|
||||||
|
|
||||||
if(maxwidth > 16) {
|
|
||||||
fprintf(stderr, "Error: Too wide characters (>16 pixels)\n");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* clear bitmap*/
|
/* clear bitmap*/
|
||||||
memset(ch_bitmap, 0, BITMAP_BYTES(width) * pf->height);
|
memset(ch_bitmap, 0, BITMAP_BYTES(width) * pf->height);
|
||||||
|
|
||||||
|
@ -607,7 +602,7 @@ int bdf_read_bitmaps(FILE *fp, struct font* pf)
|
||||||
encodetable = 1;
|
encodetable = 1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
l += pf->maxwidth * (pf->height + 7) / 8;
|
l += pf->maxwidth * ((pf->height + 7) / 8);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
l = 0;
|
l = 0;
|
||||||
|
@ -741,15 +736,17 @@ int rotleft(unsigned char *dst, bitmap_t *src, unsigned int width,
|
||||||
/* for each input column...*/
|
/* for each input column...*/
|
||||||
for(j=0; j < width; j++) {
|
for(j=0; j < width; j++) {
|
||||||
|
|
||||||
|
if (src_mask == 0) /* input word done? */
|
||||||
|
{
|
||||||
|
src_mask = 1 << (sizeof (bitmap_t) * 8 - 1);
|
||||||
|
i++; /* next input word */
|
||||||
|
}
|
||||||
|
|
||||||
/* if set in input, set in rotated output */
|
/* if set in input, set in rotated output */
|
||||||
if (src[i] & src_mask)
|
if (src[i] & src_mask)
|
||||||
dst[j] |= dst_mask;
|
dst[j] |= dst_mask;
|
||||||
|
|
||||||
src_mask >>= 1; /* next input bit */
|
src_mask >>= 1; /* next input bit */
|
||||||
if (src_mask == 0) /* input word done? */
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dst_mask <<= 1; /* next output bit (row) */
|
dst_mask <<= 1; /* next output bit (row) */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue