X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswftext.c;h=d05b84f75276e23befe96a5bd773588ea046417a;hb=41928ecbe79aabb7bdef15078f3dd900a4fd9557;hp=8ea5dd186aaece9298f2f518ea6aebebdfbe6c31;hpb=94cfbda8462b59d93aa42d6bcd94fc2bee35bf33;p=swftools.git diff --git a/lib/modules/swftext.c b/lib/modules/swftext.c index 8ea5dd1..d05b84f 100644 --- a/lib/modules/swftext.c +++ b/lib/modules/swftext.c @@ -764,8 +764,8 @@ void swf_WriteFont(SWFFONT*font, char* filename) int g = font->ascii2glyph[s]; text[s] = s; if(g>=0) { - if(font->glyph[g].advance*textscale/50 > xmax) - xmax = font->glyph[g].advance*textscale/50; + if(font->glyph[g].advance*textscale/200 > xmax) + xmax = font->glyph[g].advance*textscale/200; } } swf.movieSize.xmax = xmax*20; @@ -842,3 +842,40 @@ void swf_WriteFont(SWFFONT*font, char* filename) } +void swf_SetEditText(TAG*tag, U16 flags, SRECT r, char*text, RGBA*color, + int maxlength, U16 font, U16 height, EditTextLayout*layout, char*variable) +{ + swf_SetRect(tag,&r); + swf_ResetWriteBits(tag); + + flags &= ~(ET_HASTEXT|ET_HASTEXTCOLOR|ET_HASMAXLENGTH|ET_HASFONT|ET_HASLAYOUT); + if(text) flags |= ET_HASTEXT; + if(color) flags |= ET_HASTEXTCOLOR; + if(maxlength) flags |= ET_HASMAXLENGTH; + if(font) flags |= ET_HASFONT; + if(layout) flags |= ET_HASLAYOUT; + + swf_SetBits(tag, flags, 16); + + if(flags & ET_HASFONT) { + swf_SetU16(tag, font); //font + swf_SetU16(tag, height); //fontheight + } + if(flags & ET_HASTEXTCOLOR) { + swf_SetRGBA(tag, color); + } + if(flags & ET_HASMAXLENGTH) { + swf_SetU16(tag, maxlength); //maxlength + } + if(flags & ET_HASLAYOUT) { + swf_SetU8(tag,layout->align); //align + swf_SetU16(tag,layout->leftmargin); //left margin + swf_SetU16(tag,layout->rightmargin); //right margin + swf_SetU16(tag,layout->indent); //indent + swf_SetU16(tag,layout->leading); //leading + } + swf_SetString(tag, variable); + if(flags & ET_HASTEXT) + swf_SetString(tag,text); +} +