Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Page Flip Animation #188

Closed
souravl opened this issue Oct 6, 2019 · 10 comments
Closed

[Feature Request] Page Flip Animation #188

souravl opened this issue Oct 6, 2019 · 10 comments
Labels
enhancement New feature or request

Comments

@souravl
Copy link

souravl commented Oct 6, 2019

Please add page flip animation.

@souravl souravl changed the title Page Flip Animation [Feature Request] Page Flip Animation Oct 6, 2019
@johnfactotum johnfactotum added the enhancement New feature or request label Oct 6, 2019
@digitalethics
Copy link

@souravl What kind of animations from other ebook readers do you particularly like and that you could share here?

@digitalethics
Copy link

Bookari page curl effect:
bookari_pagecurleffect

@souravl
Copy link
Author

souravl commented Jun 8, 2020

I guess I looked at Google Play Books and found its "Use 3D effect for page turning" setting quite nice.

@gregory-opera
Copy link

Not needed... But it would still be a nice touch.

Linux users like pretty things, too... ;-)

@nekohayo
Copy link

Personally, beyond eye candy, I can see the appeal for this from a usability standpoint, when using features such as two-finger touchpad swipe gestures, to ensure that you've only flippe through one page at a time instead of skipping a set of pages.

As for which animation to use, instead of a skeumorphic page curl, you could do a horizontal slide animation that matches the movement of the gestures (when done with a touchpad gesture), like Epiphany does with touchpad swipe gestures to do history back/forward actions. The trickier detail here is that in Epiphany's case, it's not just animating something, but the movement matches the gesture; i.e. if you stop less than halfway through the movement, it "snaps back into place" like a rubber band; if you go over 50% of the horizontal movement, it snaps into place to complete the movement. It feels very natural in practice.

@digitalethics
Copy link

instead of a skeumorphic page curl, you could do a horizontal slide animation that matches the movement of the gestures (when done with a touchpad gesture)

I agree with this from an aesthetic and practical point of view. In fact, most Android applications have some kind of horizontal slide animation.

@ghost
Copy link

ghost commented Dec 10, 2020

I haven't found this in any Linux application and it would make reading so much more pleasant.
Example: https://nodlik.github.io/StPageFlip/

@gregory-opera
Copy link

gregory-opera commented Dec 12, 2020

I haven't found this in any Linux application and it would make reading so much more pleasant.
Example: https://nodlik.github.io/StPageFlip/

This is exactly the sort of effect that I am talking about... Sure, it's only a cosmetic (visual) enhancement - but as I said above, Linux users like pretty things too.

@johnfactotum
Copy link
Owner

Thanks for the link. Looks very cool.

The main problem with Epub.js is that each "page" is not a separate element, but rather a CSS column. So to have a flip animation is a bit more involved because you cannot transform each "page" individually like you would with separate elements.

Essentially, I think one will have to

  1. Take a screenshot of the current page
  2. Overlay this screenshot on top of the actual page
  3. Go to the next page
  4. Take a screenshot of the next page
  5. Make an animation out of the two screenshots
  6. Remove all the screenshots and show the actual page

@johnfactotum
Copy link
Owner

A horizontal slide animation has been added in 51ddfac

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants