Android 翻页卷曲 电子书源代

android 翻页卷曲效果 电子书翻页 转载请注明来自: 5进制空间-android区 相信做电子书的同学,都遇到过翻页动画的需求吧,如果你不满足与点击滑动翻页的话,这边文章应该能够帮助到你。 先上个效果图:效果还是很不错的,不过与ibook那个效果比起来,还是有差距的。应为这个没用到openGL做3D效果,只是用的2d的canvas画布去画的view,添加了阴影效果,还是挺有立体感的。而且比较流畅。openGL实现肯定效果会更好,... 阅读详情

测试卷曲DEMO环境:三星T959 手机一部 系统 Android 2.3

测试txt文件位置:请自行将z8806c.txt放置SDcard 根目录,进行测试

测试txt文件大小:98.5 MB(103,387,040 字节)电子书文件一个(为了复制出这么大的文本文件,电脑足足卡了20多分钟,实际中应该没有这么大的电子书,我想说明什么,你懂的.....不解释)

读取此文本时间:低于0.5毫秒(貌似夸张了一点)

Android 翻页卷曲 电子书源代码下载:

免费下载地址在 http://linux.linuxidc.com/

用户名与密码都是www.linuxidc.com

具体下载目录在 /pub/Android源码集锦/2011年/11月/Android 翻页卷曲 电子书源代码/

 

package sf.hmg.turntest;

import java.io.IOException;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PointF;
import android.os.Bundle;
import android.util.FloatMath;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Toast;

public class turntest extends Activity {
 /** Called when the activity is first created. */
 private PageWidget mPageWidget;
 Bitmap mCurPageBitmap, mNextPageBitmap;
 Canvas mCurPageCanvas, mNextPageCanvas;
 BookPageFactory pagefactory;

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  requestWindowFeature(Window.FEATURE_NO_TITLE);
  getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
  mPageWidget = new PageWidget(this);
  setContentView(mPageWidget);

  mCurPageBitmap = Bitmap.createBitmap(480, 800, Bitmap.Config.ARGB_8888);
  mNextPageBitmap = Bitmap
    .createBitmap(480, 800, Bitmap.Config.ARGB_8888);

  mCurPageCanvas = new Canvas(mCurPageBitmap);
  mNextPageCanvas = new Canvas(mNextPageBitmap);
  pagefactory = new BookPageFactory(480, 800);

  pagefactory.setBgBitmap(BitmapFactory.decodeResource(
    this.getResources(), R.drawable.shelf_bkg));

  try {
   pagefactory.openbook("/sdcard/z8806c.txt");
   pagefactory.onDraw(mCurPageCanvas);
  } catch (IOException e1) {
   Toast.makeText(this, "电子书不存在,请将《z8806c.txt》放在SD卡根目录下,可以超过100M容量",
     Toast.LENGTH_LONG).show();
  }

  mPageWidget.setBitmaps(mCurPageBitmap, mCurPageBitmap);

  mPageWidget.setOnTouchListener(new OnTouchListener() {
   @Override
   public boolean onTouch(View v, MotionEvent e) {
    // TODO Auto-generated method stub

    boolean ret = false;
    if (v == mPageWidget) {
     if (e.getAction() == MotionEvent.ACTION_DOWN) {
      mPageWidget.abortAnimation();
      mPageWidget.calcCornerXY(e.getX(), e.getY());

      pagefactory.onDraw(mCurPageCanvas);
      if (mPageWidget.DragToRight()) {
       try {
        pagefactory.prePage();
       } catch (IOException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
       }
       if (pagefactory.isfirstPage())
        return false;
       pagefactory.onDraw(mNextPageCanvas);
      } else {
       try {
        pagefactory.nextPage();
       } catch (IOException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
       }
       if (pagefactory.islastPage()) {
        return false;
       }
       pagefactory.onDraw(mNextPageCanvas);
      }
      mPageWidget.setBitmaps(mCurPageBitmap, mNextPageBitmap);
     }

     ret = mPageWidget.doTouchEvent(e);
     return ret;
    }

    return false;
   }

  });

 }
}

Unity3D实现逼真书页卷曲效果:从网格变形到交互优化 在实时渲染和交互式应用开发中,模拟逼真的物理效果是提升用户体验的关键。其核心原理在于通过数学模型(如正弦函数与指数衰减结合)动态驱动网格顶点变形,从而在视觉上模拟纸张弯曲的连续曲率变化。这一技术不仅实现了高质量的可视化效果,更在性能与可控性上取得了平衡,尤其适用于对交互响应和视觉保真度要求较高的场景。基于顶点着色器的渲染方案,配合双面纹理与动态法线计算,能够进一步强化纸张的厚度感与光影质感。在Unity3D引擎中,通过C#脚本控制网格变形,并结合自定义Shader进行渲染,可以高效实现诸如电子书、交互式手册 阅读详情

相关推荐

Android翻页动画效果实战完整源码

贝塞尔曲线按控制点数量分为多个阶数,常见有一阶(线性)、二阶(二次)和三阶(三次)。其通用公式如下:其中 $ P_i $ 是第 $ i $ 个控制点,$ n $ 为曲线阶数,$ t $ 为参数变量,表示沿曲线的进度比例。// 阶数i <= n;i++) {在Android平台实现高度拟真的翻页动画,核心难点在于如何通过自定义视图系统还原纸质书籍在翻动过程中所呈现的复杂视觉特征——包括页面弯曲形变、动态投影、折角高光以及多层内容的精确叠加。

weixin_29496633的博客 1048

Android利用贝塞尔曲线实现翻书效果(适配AndroidX)

实现背景 不知道你有没有遇到同样的问题,要实现翻书效果,但是从Android P开始,Canvas.clipPath(@NonNull Path path, @NonNull Region.Op op) ; 已经被废弃,而且是包含异常风险的废弃API,只有Region.Op.INTERSECT 和 Region.Op.DIFFERENCE 得到兼容,严重影响3D翻书效果的实现 参考了网上好多方法都不行,这里就不过多说了,无奈自己研究吧 效果实现 ...

小小苏的小小苏 590

精通Android平台3D翻页动画实现指南

OpenGL ES(Open Graphics Library for Embedded Systems)是针对便携式和嵌入式设备特别优化的图形API。它是OpenGL标准的一个子集,旨在提供高性能的二维和三维图形渲染能力。作为一种跨平台的标准,它被广泛应用于智能手机、平板电脑、游戏主机等设备上。

weixin_42611310的博客 457

android控件翻书效果,android ViewPager实现滑动翻页效果实例代码

实现ViewPager的滑动翻页效果可以使用ViewPager的setPageTransformer方法,如下:import android.content.Context;import android.support.v4.view.ViewPager;import android.util.AttributeSet;import android.view.View;public class R...

weixin_30139213的博客 757

Gazebo仿真平台模型搭建与修改

ROS里踩过的坑(一)Gazebo仿真平台模型搭建与修改文件讲解Models 文件World文件Launch文件模型编辑可视化编辑配置文件编辑模型展示如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出...

Redglass的博客 1万+

ROS入门必学导航算法——Navigation

该平台集成了多款无人车底盘,包括履带式、四轮差速、阿克曼、麦克纳姆轮底盘等,以满足不同形式和配置的需求,并搭载了RTK定位系统、双目相机、深度相机和激光雷达等多种传感器,以满足开发者的科研需求。amcl节点接收里程计数据(通过"odom"话题)和激光雷达数据(通常通过"scan"话题),结合已知的地图,实时地估计出机器人在该地图上的位置。在ROS中,这是通过"tf库"变换实现的,通过将传感器数据转换到共同的参考系中,系统可以更容易地集成来自不同传感器的数据,并确保它们在相同的空间和时间范围内可用。

AMOVLAB(阿木实验室) 2908

Android 实现书籍翻页效果----完结篇

                                               By 何明桂(http://blog.csdn.net/hmg25) 转载请注明出处      之前由于种种琐事,暂停了这个翻页效果的实现,终于在这周末完成了大部分功能,但是这里只是给出了一个基本的雏形,没有添加翻页的动画效果,由于下个周末开始,需要转向去研究framework层(短暂的酱油期就这样结束啦 o(︶︿︶)o唉),将会暂停翻页的开发,所以想要进一步提高功能的童鞋需要自己动手~~~稍后发布的将是本人提供的

何明桂的小窝 7万+

原创_新魔百和CM201-1鸿蒙架构当贝乐家语音安卓9线刷固件包刷机教程可救砖rom刷机包

不用担心变砖,因为系统内核会自动判断分区及CPU等级,假设你CPU是高于S905L3的那么。7.adb功能支持,系统增加开机自启功能,添加老人桌面模式,默认为年轻化桌面;所以我发的这个固件可适用于_cw_ys_zg_zn代工上生产的盒子进行刷机;5.CPU及GPU算法更改,当观看4K片源时,AI智能会自动优化系统后台进程,正如我所说,本固件是采用安卓公版镜像制作而成,那么代工厂也是使用的公版镜像,1.移植鸿蒙架构代码,完美融合安卓系统,增加系统的稳定性;刷机的时候 他会自动短接链接,所以不存在变砖。

a138088150的博客 1万+

Android书页翻页设计:android-flip

 Android书页翻页设计:android-flip 在一些常见的电子书或者内容阅读类的Android项目中,会实现一种效果:比如,用户在屏幕左翻右翻时候,电子书就像真实的纸质书籍一样翻页(不同于普通的Android ViewPager那样的切换)。在github上的第三方开源项目android-flip实现了这个设计需求。 android-flip在github上的项目主页是:htt

Zhang Phil 4662

高等数学/概率论/数理统计/线性代数/离散数学面试-核心概念-问题理解

特征值与特征向量是线性代数中的概念,它们与线性变换有关。在线性变换中,如果存在非零向量 v ,使得当该向量通过变换后,其方向不变,只是长度发生了变化,那么这个向量 v 就是特征向量。而这个长度变化的比例因子,即变换前后向量长度的比值,称为特征值。数学公式表示:通俗易懂的解释:想象一下,你有一个可以伸缩的橡皮筋,这个橡皮筋可以代表一个向量。现在,你有一个特殊的机器,它可以改变橡皮筋的形状,但不会改变它延伸的方向。当你把橡皮筋放入机器中,机器会拉伸或压缩橡皮筋,但橡皮筋的方向保持不变。

m0_64198455的博客 2292

基于aarch64分析kernel源码 六:kernel_init进程(1号进程)、kthreadd进程(2号进程)

kernel_init进程(1号进程)、kthreadd进程(2号进程)分析

OnlyLove_的博客 764

android-pagecurl:实现Android平台上的翻页卷曲效果

android-pagecurl 是一个开源项目,致力于在 Android 平台上利用 OpenGL ES 1.0(可能也兼容 1.1/2.0)实现“页卷”效果。该项目允许开发者将翻页效果应用在各种场景中,如电子书阅读器或任何需要页面翻转动画的应用程序。项目代码遵循 Apache 2.0 协议,可以自由地用于商业或个人项目。 ## 项目技术分析 android-pagecurl 项目的核心是一...

gitblog_00297的博客 999

如何在 Linux 上安装 RTX 5090 / 5080 /5070 Ti / 5070 驱动程序 — 详细指南

Linux 上的 NVIDIA 5090 是 AI、游戏和渲染的强大引擎,但需要耐心。如果稳定性是首要考虑因素,请坚持使用开源驱动程序,并关注 NVIDIA 论坛以获取未来更新。

iCloudEnd的博客 6912

Android app的电子书翻页卷曲功能

//读取文件,设置翻页时的阴影和背面文字 public class BookPageFactory { private File book_file = null; private MappedByteBuffer m_mbBuf = null; private int m_mbBufLen = 0; private int m_mbBufBegin = 0; private int m...

cris的博客 893

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

android 翻页卷曲效果 电子书翻页(附源码)

转载请注明来自: 5进制空间-android区相信做电子书的同学,都遇到过翻页动画的需求吧,如果你不满足与点击滑动翻页的话,这边文章应该能够帮助到你。先上个效果图:效果还是很不错的,不过与ibook那个效果比起来,还是有差距的。应为这个没用到openGL做3D效果,只是用的2d的

1705

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

android 翻页卷曲 电子书DEMO

android 翻页卷曲 电子书DEMO       我的真机测试结果: 测试卷曲DEMO环境:三星T959 手机一部 系统 android 2.3 测试txt文件位置:请自行将z8806c.txt放置SDcard 根目录,进行测试 测试txt文件大小:98.5 MB(103,387,040 字节)电子书文件一个(为了复制出这么大的文本文件,电脑足足卡了20多分钟,实际中应该没有

IOS Android 开发 2752

android-pagecurl:Android平台上实现炫酷翻页效果的终极OpenGL ES指南

android-pagecurl是一个基于OpenGL ES技术在Android平台实现页面翻页效果的开源项目。它提供了类似真实书本翻页的视觉体验,通过高效的图形渲染技术,让应用界面呈现出极具沉浸感的翻页动画效果,是开发电子书、杂志阅读类应用的理想选择。 ## 📚 什么是android-pagecurl? android-pagecurl是一个专为Android平台设计的翻页效果实现方案,它

gitblog_00720的博客 656

Android PageFlip终极指南:为你的应用注入真实3D翻页动效

想要为你的Android应用添加令人惊艳的3D翻页效果吗?**Android PageFlip**正是你需要的终极解决方案!这个强大的开源库能够为电子书、相册、文档阅读器等应用带来逼真的翻页动画,让用户体验瞬间提升到新高度。🎉 ## 🌟 什么是Android PageFlip? **Android PageFlip**是一个专为Android平台设计的3D风格翻页效果库,采用OpenGL

gitblog_01134的博客 831

Android实现阅读器横向翻页效果(附带源码)

Android实现阅读器横向翻页效果(附带源码)

欢迎来到我的博客!这里是一个专注于计算机技术的分享平台,涵盖编程开发、算法研究、系统架构、软件工程等多个领域。无论你是初学者还是资深开发者,都能在这里找到有价值的内容。 1250

Android电子书翻书效果

关键代码如下: import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.ColorMatrix; import android

865

PageFlip完全配置手册:12个核心参数详解与优化技巧

Android PageFlip是一款实现3D翻页效果的开源库,通过OpenGL技术模拟真实书页翻转的视觉效果。本指南将详细解析12个核心配置参数,帮助开发者快速掌握翻页效果的定制方法,打造媲美纸质书籍的阅读体验。 ## 快速入门:环境准备 要开始使用PageFlip库,首先需要将项目克隆到本地开发环境: ```bash git clone https://gitcode.com/gh_mi

gitblog_00727的博客 486
上一篇: 关于Android的nodpi,xhdpi,hdpi,mdpi,ldpi
下一篇: 安卓txt电子书阅读器源码
stonenotes123
博客等级 码龄15年 30粉丝 176原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值