El Dimecres, 15 de juliol de 2015, a les 18:10:03, Jeremy Maitin-Shepard va escriure: > I've started to add sufficient Javascript support in order for animate.sty > latex animations to work. In my opinion this is quite valuable > functionality since I am not aware of any way to make PDF animations that > can be displayed in a free software PDF viewer.
Nice :) > > animate.sty supports 3 modes for generating the animation: > > 1. icon mode: This requires being able to look up an icon (corresponding to > the frames of the animation) by name via getIcon, and to change the icon > associated with a form widget using buttonSetIcon. I'm not exactly sure > what an icon is, and poppler doesn't seem to support any of these > operations, so this method doesn't seem very promising. > > 2. widget-based: This requires being able to change the visibility of a > form widget. Again, poppler doesn't seem to support this, so this method > isn't very promising. > > 3. optional content group (ocg)-based: This requires being able to set the > visibility of optional content groups. Poppler does in fact have some (not > well-documented) support for this. > > I implemented the necessary Javascript interface for optional content > groups, via the QAbstractItemModel interface provided in > poppler-optcontent. I also implemented the necessary Javascript timer > functionality. The result is that animations almost work. The problem is > that Okular doesn't seem to get notified about the visibility changes, so a > new frame is only shown if the zoom level is changed to force a redraw. > > Any advice about how to deal with this redraw problem? Trigger the redraw yourself? See Saheeb's branch for optinal content (origin/gsoc2015_layer_feature), I'd say it probably makes sense for you to base your work on his branch. Cheers, Albert > > The patch implementing these changes (WIP) is attached. See also example > LaTeX file. Use pdflatex to generate a pdf. To debug the generated > JavaScript, I found it is helpful to copy animate.sty to the local > directory, and then edit it to add console.println statements into the > generated code. > > Note: The Javascript code, which should be triggered by page load, doesn't > seem to get run until you switch to presentation mode. To actually see the > animation, you have to switch back to regular view mode, and then quickly > toggle the zoom level. _______________________________________________ Okular-devel mailing list Okular-devel@kde.org https://mail.kde.org/mailman/listinfo/okular-devel