mirror of
https://github.com/michaelrsweet/pdfio.git
synced 2025-02-13 15:32:51 +01:00
Fix another bug in the CMAPv4 code, and a bug in the unit test program.
This commit is contained in:
parent
d36df63b57
commit
3f0aad7564
@ -165,8 +165,7 @@ test_font(const char *filename) // I - Font filename
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
puts("FAIL");
|
puts("WARNING (no copyright found)");
|
||||||
errors ++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < (int)(sizeof(strings) / sizeof(strings[0])); i ++)
|
for (i = 0; i < (int)(sizeof(strings) / sizeof(strings[0])); i ++)
|
||||||
@ -195,7 +194,7 @@ test_font(const char *filename) // I - Font filename
|
|||||||
}
|
}
|
||||||
|
|
||||||
fputs("ttfGetItalicAngle: ", stdout);
|
fputs("ttfGetItalicAngle: ", stdout);
|
||||||
if ((realvalue = ttfGetItalicAngle(font)) >= 0.0)
|
if ((realvalue = ttfGetItalicAngle(font)) >= -180.0 && realvalue <= 180.0)
|
||||||
{
|
{
|
||||||
printf("PASS (%g)\n", realvalue);
|
printf("PASS (%g)\n", realvalue);
|
||||||
}
|
}
|
||||||
|
4
ttf.c
4
ttf.c
@ -1282,7 +1282,7 @@ read_cmap(ttf_t *font) // I - Font
|
|||||||
|
|
||||||
// Based on the end code of the segent table, allocate space for the
|
// Based on the end code of the segent table, allocate space for the
|
||||||
// uncompressed cmap table...
|
// uncompressed cmap table...
|
||||||
segCount --; // Last segment is not used (sigh)
|
// segCount --; // Last segment is not used (sigh)
|
||||||
|
|
||||||
font->num_cmap = segments[segCount - 1].endCode + 1;
|
font->num_cmap = segments[segCount - 1].endCode + 1;
|
||||||
font->cmap = cmapptr = (int *)malloc(font->num_cmap * sizeof(int));
|
font->cmap = cmapptr = (int *)malloc(font->num_cmap * sizeof(int));
|
||||||
@ -1307,7 +1307,7 @@ read_cmap(ttf_t *font) // I - Font
|
|||||||
{
|
{
|
||||||
// Use an "obscure indexing trick" (words from the spec, not
|
// Use an "obscure indexing trick" (words from the spec, not
|
||||||
// mine) to look up the glyph index...
|
// mine) to look up the glyph index...
|
||||||
temp = segment->idRangeOffset / 2 - segCount + (ch - segment->startCode) + (seg - segCount);
|
temp = segment->idRangeOffset / 2 - segCount + (ch - segment->startCode) + (segment - segments);
|
||||||
|
|
||||||
TTF_DEBUG("read_cmap: ch=%d, temp=%d\n", ch, temp);
|
TTF_DEBUG("read_cmap: ch=%d, temp=%d\n", ch, temp);
|
||||||
if (temp < 0 || temp >= numGlyphIdArray)
|
if (temp < 0 || temp >= numGlyphIdArray)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user