Just a quick update on where I am at with the above.
I was hoping to get the the current code for this in before I go on
vacation for the next week, but I won't be able to do that (I need to work
through the build side of things, I have only got maven working so far).

I have been focused recently on BitmapData support and have what I think is
an adequate starting point for this.
it is really only supporting setPixel, setPixel32, fillRect, lock, unlock,
dispose. I did add a couple of other methods, but have not really started
to test those yet.

If you are interested you can test this and let me know of any issues you
see. I have a series of test suites in a live testing app I have been using.
(This is really meant for desktop use, but does actually show something on
a large screen tablet).

Here is a direct link into one of the bitmap based tests:
http://interactionscript.com/royale/swf-graphics/index.html?defaultTest=4,1
See instructions at the end of this email if you want more info about what
you can do.

This is working with beginBitmapFill, and lineBitmapStyle. Smooth vs.
non-smooth works on quite a few browsers, but not all browsers seem to
support the non-smoothing (i.e. 'non-alias' or 'crisp' scaling) option.
Repeat vs. non-repeat needs more work to get it to match because of the way
that patterns work in svg vs. how this works in flash.
I hope it will be possible using a feConvolveMatrix filter and a
'duplicate' option for 'edgeMode', but I only started looking into that
today and need to stop for now.

Browsers: So far I think the most problematic browser seems to be desktop
Safari, although IE11 is not great for some gradients.
Things seem to work ok also on mobile tablets I tested on (old iPad and a 6
year old Samsung Tablet with Chrome 59.x).


What can you do with the testing app?
It's really only to verify what works and what doesn't across browsers. But
it would be great - if you have some time to play with it  - if you could
check to see if there are any glaring issues that I have not yet
encountered, and let me know.
Here are some things you can do:
1. You can look at all the tests and compare them visually side-by-side
between html5 and Flash.
2. if you see bitmapData referenced as a variable in the code display on
the main screen, you can do things with it. For example, in the link above
it shows 'bitmapData0' being referenced as a var. In that case if you typed
'bitmapData0.dispose()' in the javascript console, it will run that code in
both javascript and flash, you will see the drawn content that used that
bitmapdata as a fill or stroke suddenly 'unpaint' itself visually. You
could also use fillRect, and setPixel etc to run that code in both
javascript and flash. Note that BitmapData api is not yet fleshed out very
much at all.
3. You can (at least on Chome and some other browsers) send the currently
executed code to the javascript console. You can then copy, paste, and
change some values before pressing enter to execute the same code with
different settings. It will then run that code in both javascript and
flash.
3. You can open the javascript console and do a bunch of arbitrary stuff.
When you are doing that, simply imagine you already have imports for
Matrix, BitmapData, Rectangle, and that you can simple type
'graphics.{myGraphicsMethodHere}' for the target graphics context.

Reply via email to