gnash-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re[2]: [Gnash-dev] shape_character_def fill/line styles


From: Udo Giacomozzi
Subject: Re[2]: [Gnash-dev] shape_character_def fill/line styles
Date: Mon, 21 May 2007 12:40:14 +0200

Hello strk,

Monday, May 21, 2007, 12:27:48 PM, you wrote:
>> What relies on that fill style? The render handler does *not*.

s> Maybe it was that is_solid() call.

In case of glyphs the AGG styles are initialized using the dummy fill
style (the private one of the render handler) and will contain exactly
one fill style (no matter what is defined in the shape_character_def).

So, as long as the fill styles used in the paths are 0 or 1, there
should be no problem whatsoever.

After all, the renderer *expects* that the shape_character_def does
*not* contain any fill style (but does not rely on that).


s> Anyway, I think I finally introduced a consistency checking relying
s> on it, to take into account other cases.

Perhaps the check is incorrect?


s> Now, when a style is read, an assertion fails if the corresponding
s> shape_character_def doesn't have a fill defined for it (or maybe it's
s> a malformed SWF unless reading a font).

I think a /well/ formed SWF will /not/ define any fill style for
fonts, so this check is wrong (for glyphs, at least).


s> Can't clearly remember everything.
s> Anyway, should be easy to remove the dummy entry and the check when
s> dealing with fonts, or maybe add a different check (0 or 1 for fill
s> accepted, anything else forbidden).

Sounds good.


s> It's just that the postconditions/preconditions are harder to describe
s> (ie: sometimes we want the fills to exist, sometimes not)

The main difference between normal shapes and glyphs is really that
glyphs do not have fill or line styles defined. :)

A glyph is just a vector information without styles.

<ot>
  However it would be great to have multi-layered glyphs with
  complex fills (like normal shapes) in Flash. ;)
</ot>


Udo





reply via email to

[Prev in Thread] Current Thread [Next in Thread]