fontgen: show more error info for invalid character metrics
This commit is contained in:
parent
a87d24d417
commit
71bc3543a1
@ -192,24 +192,24 @@ int main(int argc, char * argv[])
|
|||||||
{
|
{
|
||||||
if ((char_infos[i].width < 0) || (char_infos[i].width > max_advance))
|
if ((char_infos[i].width < 0) || (char_infos[i].width > max_advance))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Error: invalid character %d width: %d\n", i, char_infos[i].width);
|
fprintf(stderr, "Error: invalid character %d width: %d (max advance %d)\n", i, char_infos[i].width, max_advance);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((char_infos[i].height < 0) || (char_infos[i].height > line_height))
|
if ((char_infos[i].height < 0) || (char_infos[i].height > line_height))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Error: invalid character %d height: %d\n", i, char_infos[i].height);
|
fprintf(stderr, "Error: invalid character %d height: %d (line height %d)\n", i, char_infos[i].height, line_height);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((char_infos[i].left < 0) || (char_infos[i].left >= max_advance))
|
if ((char_infos[i].left < 0) || (char_infos[i].left >= max_advance))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Error: invalid character %d left: %d\n", i, char_infos[i].left);
|
fprintf(stderr, "Error: invalid character %d left: %d (max advance %d)\n", i, char_infos[i].left, max_advance);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
/* Adjust character top to be index downward from top of font box. */
|
/* Adjust character top to be index downward from top of font box. */
|
||||||
char_infos[i].top = line_height - baseline_offset - char_infos[i].top;
|
char_infos[i].top = line_height - baseline_offset - char_infos[i].top;
|
||||||
if ((char_infos[i].top < 0) || (char_infos[i].top >= line_height))
|
if ((char_infos[i].top < 0) || (char_infos[i].top >= line_height))
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Error: invalid character %d top: %d\n", i, char_infos[i].top);
|
fprintf(stderr, "Error: invalid character %d top: %d (line height %d)\n", i, char_infos[i].top, line_height);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if ((char_infos[i].left + char_infos[i].width) > max_advance)
|
if ((char_infos[i].left + char_infos[i].width) > max_advance)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user