Slow down web browser rendering to show drawing process? - image-processing

i'm having a hard time searching for insights on how to achieve this since so often people are trying to accomplish the opposite. i'm interested in slowing down the browser during the graphic rendering process, so it's possible to see how a graphic is rendered step-by-step (what direction they are drawn in, how color is applied, etc.).
for instance, i'm wondering how a simple graphic like this gradient:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAxCAYAAAAbb8MkAAAAb0lEQVQYV03HUQbCAACA4T12g26wI3SDXjNmIpOYiSQjGUkiGZNEMpKMJNIh8731P3z8QfBfx3QRooc+BogQI8EQI6QYY4IMOaaYYY4FCiyxQok1Nthihz0OqFDjiBPOuOCKBjfc8UCLJ15444PvD9r8FUNlxDKTAAAAAElFTkSuQmCC
is rendered on screen over time. i found this question:
Slow down browser rendering
and tried to follow the solution with the dev tools, but i think such a simple graphic renders too fast to even see any progression. i'm wondering if theres a script i can run that may slow things down, or some other solution to do this.
any help is much appreciated. thank you!

Related

Implementing PSD processing in web (like in society6.com)

Is there a Windows server with Photoshop running that process all these templates? It just happens too quickly. How did they achieve that?
I've been looking for the answer for quite a long time and didn't find anything worthy.
A way something like this would be done would be to have an overlay template that you'd place your image under and then all of the shading and such would would go on top of it. Then it's just a mater of rotating and skewing the angle of the picture underneath the overlay to get the right perspective. This can be done programmatically in a language of your choice like PHP, Python, C#, etc.
I believe what you're describing may be achieved using the Adobe Photoshop API. Click on try demo and take a look at the various options, including the Smart Object demo.

Need a bigger mouse cursor

Windows 7 appears to only support 48x48 pixel mouse cursors natively. My dad is half blind, so this isn't good enough.
Looking around a little, I see that there is High DPI Cursor Changer Beta on SourceForge. Unfortunately, it states that it is limited to Windows 8 and above. Even if he did have Windows 8, I still don't think it would be big enough.
I've been thinking about some other alternatives which might get the job done. One is to use AutoHotKey to track the mouse position and type, and using that information, put up a larger bitmap under the cursor that is displayed on a click through window.
This seems doable, but I would like it if I could invert the information beneath the cursor as the inverted mouse cursor does. I'm thinking that this would require using the DirectX API, which I'm totally unfamiliar with. As I don't have a whole lot of time to devote to this, it would be great if someone could point out some key concepts and API calls so that I can move through this project as fast as possible.
I've also looked into zooming in, but seems using that is also problematic as it requires that he get it in and out of that state and zoom in and out fairly easily, which he can't as he can't really touch type and his fingertips don't have very much sensation, making it hard to navigate the keyboard effectively.
If there are any other ideas, I'd be interested in hearing about them as well.
I haven't tried Bill Myers solution, so I think that the cursors are still the max. size, but check out Bill's link: https://www.bmyers.com/public/high_visibility_cursors.cfm

Stage3D iOS Antialiasing on AIR 24

With AIR 24 release we are able to set anti aliasing on Stage3D now, but there are some issues with it. Can anybody help how to use it in right way without changing entire project code ?
The issue I have is that anti alias works great, and no more jagged edges, but there are rendering issues and I guess some texture normals are being inverted, also when using Occlusion Material there are some jagged material shadows...
Next thing I notice is when drawing Wireframe Globe with Lines Segments - the lines are visible on the globe all the time, no matter if you add some object in front or not.
So, intersecting line segments with other materials don't work at all, and lines are on the screen forever.
Please, help if you find any trick fixing the issues.
Thanks
Just to add some more information: the issue seems to happen when shareContext = true. Without Starling there is antialiasing and the lineSegments are rendered at the current depth. It would be interesting to see if it works with other sharedContext besides Starling to isolate the issue. If I find an answer I will come back and post it. It would be nice to get this working. Any idea the performance hit on mobile of having a second instance of away3d? Layering that way might be a dirty work around.
*****EDIT****
AntiAliasing on the line Segments only occurs with sharedContext. View3D class does not seem to have it's antiAlias value set anywhere and when I forced it to a value of 2, all hell broke loose.
Edit#2
Mesh appears above line segments, Sprite3D do not.

CATextLayer changing text fast

I am working on an app that needs to change a lot of CATextLayers strings, but, only one or two characters of it(in general though, the strings are in length of about 2-5 characters).
At first I went with UILabels which were extremely slow, and because of that I tried out CATextLayer, which was a lot faster, but not fast enough, I am updating about 150 CATextLayers quite often, all at once , and it just doesn't cut it, I feel a lag.
I then tried out to do it even more low-level with CoreText, I tried drawing it with a CTLine, which had about the same performance of CATextLayer, so I got back to the CATextLayers because my positioning code for CoreText wasn't perfect.
I started thinking about caching for each string the first two characters(which are always constant), and only changing the other 3 characters, with smaller bounds, which I assume will be a bit faster, but, will it be faster? After all it will have it to composite it with the other text-layer, and it will have to be update all of the 150 text-layers.
Does anybody have any advice? How would you approach it?
Attached is a screenshot from instruments showing that the problem lies in the performance of CATextLayer:
Bitmap Fonts are probably the best way to solve this problem, as they're far and away more performant than anything else in terms of font drawing for something of this nature. But you need to pre-render them to the scale you desire to get the best out of them both visually and in terms of performance.
And you might be best off using Sprite Kit, as it has native handling of them. Here's a github repo with a useful thing to make it easier to use rendered bitmaps from a common tool for creating them: https://github.com/tapouillo/BMGlyphLabel

Best GDI drawing approach

I am developing an interactive CD most of my life I wrote console applications writing something mostly graphical is akward for me.
So here is my approach :
I am drawing on the canavas using shapes and images the left and top position are stored in a file. Is there any easier approach ? I thought using shapes objects would simplify my work what do you guys think ?
Any examples are welcome.
If you consider this question subjective please vote for closing.
The proper way is to write an OnPaint handler (that is, listening to the WM_PAINT message) and drawing using the GDI.
Here are a couple of simple examples:
Moving triangles
Bouncing ball
Drawing by moving controls is very awkward.
Since you didn't specify a any version, I assume you're not wasting your time with an ancient Delphi, so maybe you should also take a look at FireMonkey.
That also opens the door to having your interactive stuff work on other platforms..
I recommend the Delphi GDI+ Library which I have used with success. It's a wrapper around GDI+ which takes alot of the pain out of it.

Resources