- 浏览: 188632 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
arpenker:
这个命令行运行的前提是要基于LINUX服务器能够自己手动安装F ...
linux java转amr为mp3 -
smith789:
使用的类都废弃了
HttpUtil工具类 -
s21109:
自定义TabHost之手势切换Tab视图(不带动画)
package com.clip; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; import android.view.SurfaceHolder; import android.view.SurfaceHolder.Callback; import android.view.SurfaceView; /** * 切割图片并逐帧播放 * 将一张6*2的大图片切割成12张小图片 * @author zhouli * */ public class MyView extends SurfaceView implements Callback, Runnable { private Bitmap[] robotBmps = new Bitmap[12]; private int frameX; // 小图在大图中的x坐标 private int frameY; // 小图在大图中的y坐标 private int frameW; // 小图的宽度 private int frameH; // 小图的高度 private SurfaceHolder sh; private Canvas canvas; private int currFrame; // 当前绘制帧 private boolean flag; // 线程循环标识 public MyView(Context context) { super(context); sh = this.getHolder(); sh.addCallback(this); // 切割图片 Bitmap robot = BitmapFactory.decodeResource(getResources(), R.drawable.robot); frameW = robot.getWidth() / 6; frameH = robot.getHeight() / 2; for (int i = 0; i < robotBmps.length; i++) { frameX = (i % 6) * frameW; frameY = (i / 6) * frameH; robotBmps[i] = Bitmap.createBitmap(robot, frameX, frameY, frameW, frameH); } } private void logic() { currFrame++; if (currFrame >= 12) { currFrame = 0; } } /** * 绘制图片 */ private void drawFrame() { try { canvas = sh.lockCanvas(); canvas.drawColor(Color.BLACK); if (canvas != null) { // 绘制机器人 canvas.drawBitmap(robotBmps[currFrame], (this.getWidth() - frameW) / 2, (this.getHeight() - frameH) / 2, null); } } catch (Exception e) { e.printStackTrace(); } finally { if (canvas != null) { sh.unlockCanvasAndPost(canvas); } } } @Override public void surfaceCreated(SurfaceHolder holder) { flag = true; currFrame = 0; new Thread(this).start(); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { // TODO Auto-generated method stub } @Override public void surfaceDestroyed(SurfaceHolder holder) { flag = false; } @Override public void run() { while (flag) { drawFrame(); logic(); try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } } }
运行结果:
发表评论
-
解决ScrollView中嵌套ListView或RecycleView卡顿问题
2016-01-20 02:23 1947解决问题:<listview上下滑动卡顿> 只要 ... -
解决Eclipse启动速度过慢的问题
2016-01-13 20:20 2505Delete the following directory: ... -
Android,iOS打开手机QQ与指定用户聊天界面
2016-01-07 18:19 1785在浏览器中可以通过JS代码打开QQ并弹出聊天界面,一般作为客服 ... -
Android Studio debug使用release的签名
2015-12-09 17:50 1277当我们在做微信微博sdk分享的时候调试非常麻烦,因为要使用对应 ... -
解决Android SDK Manager更新、下载速度慢
2015-10-12 16:39 644转自: [urlhttp://blog.163.com/bob ... -
android httpClient 支持HTTPS的2种处理方式
2015-09-11 17:37 1345http://my.oschina.net/blackylin ... -
带进度条的WebView
2015-08-29 16:53 626public class ProgressWebView ex ... -
Android中javascript和java互相调用
2015-08-29 16:06 618http://www.jb51.net/article/599 ... -
仿微信朋友圈点击图片变暗
2015-08-20 22:35 1033import android.content.Context; ... -
Android图片缓存框架Fresco极其强大的配置
2015-07-20 21:12 1326Android图片缓存框架Fresco极其强大的配置,配置强大 ... -
Android实现ViewPager+RadioGroup滑动效果
2015-07-19 15:05 1220有滚动标识的滑动条,顺畅无比哦 -
Android实现可用性非常高的滚动数字条
2015-07-18 15:48 5110对外提供接口,可以是调用并改变数字滚动条的样式 -
Java实现二维码生成和解析代码
2015-07-05 16:36 1067请下载附件,查看代码 -
利用zxing-core.jar生成和解析二维码
2015-07-05 15:30 1580Zxing是Google提供的关于条码(一维码、二维码)的解析 ... -
Android-webview和js脚本语言交互的时候怎么获取js方法的返回值
2015-07-02 12:10 2099http://zhidao.baidu.com/questio ... -
JS判断手机端是否安装了某个客户端APP应用
2015-05-15 17:02 3362最近在做项目的wap版,有个需求就是,先判断手机上是否有我们的 ... -
Android选图裁剪实现
2015-04-29 18:22 525看附件顶顶顶顶顶 -
Eclipse转AS必看设置
2015-04-26 00:01 1451常用设置: 1.Tab不用4个空格 Code Style-& ... -
android软键盘挤压界面的问题解决方法
2015-04-09 11:59 2851AndroidManifest.xml 中设置 android ... -
MultipleImagePick 从相册中选择图片,可以单选和多选。
2015-04-08 10:28 2112http://jcodecraeer.com/a/openso ...
相关推荐
描述中提到,“能读取json文件,切割小图片”,这意味着在进行图集切割时,TexturePacker会生成一个JSON文件,其中包含了每个小图像在大图集中的位置、大小以及可能的旋转和其他元数据。这个JSON文件是解包过程的...
图集切割工具的自动识别功能意味着它可以智能地检测大图中的各个小图片边界,而无需手动设定每个图片的位置和大小。这对于处理包含大量小图像的复杂图集来说,极大地提高了工作效率。 总结一下,这款图集切割工具...
在IT行业中,尤其是在Web开发和GIS(地理信息系统)领域,栅格大图切成小图片的程序是一种常见的技术手段。这种程序的主要目的是为了优化图像在网页或应用中的加载速度和显示效率,尤其对于大规模的地图数据来说更为...
大图切割浏览的基本原理是将大图分割成多个小块(通常为矩形),每个小块都是一个独立的较小尺寸的图片。当用户在网页上滚动或缩放时,只加载当前视窗内的图片块,而不是一次性加载整个大图。这样可以显著减少初次...
图片切割是将一幅大图片按用户要求切割成多幅小图片的过程。这个过程需要对图片进行处理,以获取用户所需的图片尺寸和格式。C#提供了强大的图像处理能力,通过使用Graphics类和Bitmap类,我们可以轻松地实现图片切割...
ASP图片切割技术是一种在Web开发中处理大图或高分辨率图片的方法,主要目的是为了提高网页加载速度和优化用户体验。在给定的“asp图片切割.rar”压缩包中,可能包含了一个使用Active Server Pages (ASP) 实现的图片...
3. **图像处理**:根据用户设定的N1和N2,计算出总切割块的数量,并将大图片分割成相应数量的小图片。这通常涉及到坐标计算,以及将原始图像数据按指定尺寸切割。 4. **编号与保存**:每一块小图片被赋予一个唯一的...
图片切割是指将一个大图片按照指定的尺寸或区域进行分割成多个小图片的过程。这项技术在网站设计中特别有用,例如在制作轮播图、瀑布流布局或者需要自适应不同设备尺寸的网页时。通过切割图片,我们可以根据网页布局...
图片切割是指从一张大图中选取特定区域并将其独立出来,形成新的小图片。这项技术广泛应用于图像分析、网页设计、图像识别等多种场景。Matlab,全称Matrix Laboratory,是一款强大的数值计算和数据可视化软件,它...
Smart Slicer 2D Unity3D将2D图片切割的插件,可以快速实现画线切割图片效果
一张大图可能会占用大量内存,加载时间也会增加,而将其切割成小块,可以按需加载,减少内存占用并提高加载速度。在Unity3D中,这通常通过Sprite Packer和Sprite Renderer组件来实现。 1. **Sprite Packer**: 这是...
有时我们基于某种原因(比如为方便浏览大图、制作拼图游戏,或是不想让访客下载站点的图片:(等等)而需要将图片化整为零成若干小图片,这款出自德国的SplitZ!或许可以帮您替代许多大型商业软件才能完成的工作。它能...
在Windows Presentation Foundation (WPF) 中,加载超大图片可能会遇到性能问题,因为WPF默认情况下会尝试一次性加载整个图像到内存中,这可能导致内存溢出或者显示为白色,尤其是在处理20M以上的高清大图时。...
这个功能允许开发者将一张大图片分割成多个小图片,这在很多场景下都是非常实用的,比如制作拼图游戏、处理网页图像或者优化UI元素。 首先,我们需要理解Qt的绘图系统。Qt 4.8.2中的QPainter类是进行图形绘制的核心...
在这个背景下,"ATOM图像切割工具绿色版"应运而生,它是一款高效、易用的图像切割软件,能够帮助用户快速将大图分割成多个小图,满足多样化的需求。 ATOM图像切割工具的特色在于其“绿色”属性,这意味着它无需安装...
从网上下载的图片素材有时候是一张大图,里面是很多小图片,在使用时需剪切下来,本软件适用于排列整齐的小图剪切。 运行环境: .net framework2 使用方法: 先设置上下左右边距去除边上的空白部分,剩下的矩形按...
在设计、网页制作、社交媒体配图等领域,图片切割工具非常实用,能够帮助用户精确地选取图像的某一部分,或者将大图片分解成多个小图片。 描述中的重复部分“图片切割工具”进一步强调了该软件的核心功能,即处理和...
在这个过程中,"帧动画图片切割"是指将包含多帧动画的大图分割成若干个相同大小的小图片,每个小图片代表动画序列中的一帧。 首先,我们需要理解帧动画的基本原理。帧动画由一系列有序的静态图片组成,这些图片按照...
为了使发布的图片更具吸引力,一种流行的方式是将一张大图分割成九张小图,形成一个视觉效果独特的“九宫格”。针对这个需求,出现了专门的工具——"Windows - 九宫格图片切割器"。这款小巧实用的软件可以帮助用户...
当需要将多张小图片合并为一张大图时,我们可以创建一个`TextureAtlas`。`TextureAtlas`允许我们将多个`TextureRegion`打包到同一个`Texture`上,这样就可以一次性加载所有图片。 1. 创建`TextureAtlas`: 首先,...