git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Generated from configure.in
[swftools.git]
/
lib
/
modules
/
swftext.c
diff --git
a/lib/modules/swftext.c
b/lib/modules/swftext.c
index
0f203ca
..
1612e63
100644
(file)
--- a/
lib/modules/swftext.c
+++ b/
lib/modules/swftext.c
@@
-463,7
+463,7
@@
swf_FontExtract_DefineTextCallback(int id, SWFFONT * f, TAG * t, int jobs,
if (id == fid) {
if (jobs & FEDTJ_PRINT) {
int code = f->glyph2ascii[glyph];
if (id == fid) {
if (jobs & FEDTJ_PRINT) {
int code = f->glyph2ascii[glyph];
- printf("%c", code);
+ printf("%lc", code);
}
if (jobs & FEDTJ_MODIFY)
f->glyph[glyph].advance = adv * 20; //?
}
if (jobs & FEDTJ_MODIFY)
f->glyph[glyph].advance = adv * 20; //?
@@
-663,6
+663,7
@@
int swf_FontReduce(SWFFONT * f)
font_freelayout(f);
font_freeglyphnames(f);
font_freelayout(f);
font_freeglyphnames(f);
+ f->use->used_glyphs= 0;
for (i = 0; i < f->numchars; i++) {
if(!f->use->chars[i]) {
if(f->glyph2ascii) {
for (i = 0; i < f->numchars; i++) {
if(!f->use->chars[i]) {
if(f->glyph2ascii) {
@@
-673,6
+674,7
@@
int swf_FontReduce(SWFFONT * f)
f->glyph[i].shape = 0;
f->glyph[i].advance = 0;
}
f->glyph[i].shape = 0;
f->glyph[i].advance = 0;
}
+ f->use->used_glyphs++;
} else {
max_glyph = i+1;
}
} else {
max_glyph = i+1;
}
@@
-782,13
+784,11
@@
void swf_FontClearUsage(SWFFONT * f)
int swf_FontUse(SWFFONT * f, U8 * s)
{
int swf_FontUse(SWFFONT * f, U8 * s)
{
- if (!f->use)
- swf_FontInitUsage(f);
if( (!s))
return -1;
while (*s) {
if(*s < f->maxascii && f->ascii2glyph[*s]>=0)
if( (!s))
return -1;
while (*s) {
if(*s < f->maxascii && f->ascii2glyph[*s]>=0)
- f->use->chars[f->ascii2glyph[*s]] = 1;
+ swf_FontUseGlyph(f, f->ascii2glyph[*s]);
s++;
}
return 0;
s++;
}
return 0;
@@
-800,6
+800,8
@@
int swf_FontUseGlyph(SWFFONT * f, int glyph)
swf_FontInitUsage(f);
if(glyph < 0 || glyph >= f->numchars)
return -1;
swf_FontInitUsage(f);
if(glyph < 0 || glyph >= f->numchars)
return -1;
+ if(!f->use->chars[glyph])
+ f->use->used_glyphs++;
f->use->chars[glyph] = 1;
return 0;
}
f->use->chars[glyph] = 1;
return 0;
}
@@
-1563,8
+1565,6
@@
SRECT swf_SetDefineText(TAG * tag, SWFFONT * font, RGBA * rgb, char *text, int s
swf_TextSetCharRecordUTF8(tag, font, upos, scale * 20, gbits, abits);
upos= next;
swf_TextSetCharRecordUTF8(tag, font, upos, scale * 20, gbits, abits);
upos= next;
-
- printf("%s\n", upos);
}
free(utext);
}
free(utext);