ObjReader Community
WIP => WIP => Topic started by: Patrice Terrier on October 27, 2016, 12:07:38 pm
-
This is the place to post questions or comments about the "PNG Animation" project posted into the "64-bit SDK programming" section.
...
-
How come the PowerBASIC version of RedHawk.exe doesn't display GDImage.dll's nag screen?
-
The drawback of this format, is that if you load it inside of a standard graphic application you will get only the first frame,
and if ever you save it, you will loose the animation, because the "2nd png" section, and the "footer" will be missing.
You can also regard it as an advantage to safeguard the copyright and to promote the dedicated viewer. :)
-
He He, looks like there is a back door ;)
And, YES you are right, this is also an advantage ...
I have written a command line utility to create a PNG animation directly from a GIF animated.
But most of the time i prefer to rework/resize first the resulting PNG into Photoshop, before creating the animation itself.
...
-
Hi Patrice
How to run GIFtoPNG.exe ? When I tried running it, it display an error message as shown in the attachment
How do I select a Gif file so that it can produce the png file ?
Thanks
-
Select a GIF animated file with the Windows Explorer, and use drag and drop of the image onto the GIFtoPNG.exe name.
Because this exe is a command line utility only.
...
-
I just post a new version of the PNGanim.exe utility to display and adjust the animation speed of ani_PNG FILES.
New feature:
- Frame count display
Fix:
- To avoid unespected resizing when moving the PNGanim.exe window to the edges.
Handling of WM_MOVING message has been added, to keep the window within the bounds of the working area
case WM_GETMINMAXINFO:
pMM = (MINMAXINFO*) lParam;
pMM->ptMinTrackSize.x = gP.MinTrackSizeW;
pMM->ptMinTrackSize.y = gP.MinTrackSizeH;
return 0;
case WM_MOVING: // Keep the window into the working area
hMonitor = MonitorFromWindow(hWnd, MONITOR_DEFAULTTONEAREST);
lpr = (RECT*) lParam;
if (lpr->top < 0) { lpr->top = 0; }
lpr->right = lpr->left + gP.MinTrackSizeW;
lpr->bottom = lpr->top + gP.MinTrackSizeH;
tmi.cbSize = sizeof(tmi);
if (GetMonitorInfo(hMonitor, &tmi)) {
if (lpr->bottom > tmi.rcWork.bottom) {
lpr->bottom = tmi.rcWork.bottom;
lpr->top = lpr->bottom - gP.MinTrackSizeH;
}
}
return 1;
You can get the new version there. (http://www.objreader.com/index.php?topic=69.msg309#msg309)
If you have questions or comments about it, please post them here.
...
-
you can also use this Link for create Animated Png and more
In my png animation format the first frame is kept unchangend, the real header being stored at the end of the file.
I looked first at the "apng" format, but found it over complicated, this is the reason why i wrote mine to act as a replacement for my .ski format, and to be able to read it directly with the GDIPLUS api.
I have also my own set of tools to create them, inluding the hability to convert directly from a GIF animated file.
For further details see this thread
http://www.objreader.com/index.php?topic=69.0