转载自 : http://blog.csdn.net/gengqiquan/article/details/65938021 领导最近觉得携程的截屏生成长图分享效果比较好,所以我们也加了个:产品觉得分享出去的长图需要加公司品牌水印,于是我们也加了个:嗯,事件起因就是这样. 长图一般是ScrollView和ListView. 我们需要取得这两个控件的完整显示的图片.原理很简单,搞一张和控件长宽一致的画布(就是创建一个高宽相等的bitmap).然后调用控件的draw方法把自己画到画布上去. 分别贴出…
尊重他人的劳动成果.转载请标明出处:http://blog.csdn.net/gengqiquan/article/details/65938021. 本文出自:[gengqiquan的博客] 领导近期认为携程的截屏生成长图分享效果比較好,所以我们也加了个.产品认为分享出去的长图须要加公司品牌水印,于是我们也加了个.嗯,事件起因就是这样. 长图通常是ScrollView和ListView. 我们须要取得这两个控件的完整显示的图片. 原理非常easy,搞一张和控件长宽一致的画布(就是创建一个高宽相…
最近在做新业务需求的同时,我们在 Android 上遇到了一些之前没有碰到过的问题,截屏分享. WebView 生成长图以及长图在各个分享渠道分享时图片模糊甚至分享失败等问题,在这过程中踩了很多坑,到目前为止绝大部分的问题都还算是有了比较满意的解决方案.以下就从三个方面来总结一下过程中遇到的挑战和最后的解决方案. 一.概述 最近在做新业务需求的同时,我们在 Android 上遇到了一些之前没有碰到过的问题,截屏分享. WebView 生成长图以及长图在各个分享渠道分享时图片模糊甚至分享失败等问题…
现在是个知识分享时代,但不可避免的盗版也无处不在,不知道在我们大家身边有没有遇到过这样的情况:自己煞费苦心制作的PDF文档不知道在什么时候就会被别人给盗用了,那么如何才能尽量避免这个问题呢?今天带大家分享一个可以将PDF添加水印的方法! 操作软件:PDF编辑器   1.首先我们需要在电脑中下载一个编辑器,安装完成之后需要把迅捷PDF编辑器打开运行,然后把PDF文件在软件中打开.   2.当我们打开PDF文件后,我们需要找到水印工具,我们点击界面上方的文档按钮后弹出了许多工具,我们在其中找到水印工…
之前写过生成自定义二维码的两篇文章:<Android生成自定义二维码><Android生成二维码–拍照或从相册选取图片>,下面就介绍一下Android应用内如何保存以及分享二维码图片. 保存图片 Adnroid中保存图片可以直接调用系统提供的插入图库的方法,或者指定存储路径.插入图片后需要刷新系统图库. 1.调用系统提供的插入图库方法 //插入到系统图库 MediaStore.Images.Media.insertImage(getContentResolver(), bitmap…
前言: 在app的文章中,经常会夹杂着一些特别长的长图.在阅读的时候需要滑动很久才能看图片下方的文字,因此对于长图只展示图片上面一部分,并且可以展开这个功能是很重要的. 效果: 基本思路: 利用scaleType的matrix属性以及直接改变图片的高度来实现图片的收起与展开. 过程: 开始尝试: scaleType属性介绍: center:保持原图的大小,显示在ImageView的中心.当原图的size大于ImageView的size,超过部分裁剪处理: centerInside:以原图完全显示…
项目中总会遇到加载长图的需求,图片的长度可能是手机长度的很多倍,也就是需要通过滑动来查看图片.比较简单的实现方式就是使用ScrollView来加载长图,但是这样做有一个很严重的问题,就是内存消耗严重.我这里有一张长图,宽高为440*10260,大小为477KB,使用ScrollView加载的话,总内存消耗为97M,是相当恐怖的.而使用优化后的自定View加载长图,内存消耗为46M,极大的减少了内存的优化,效果非常明显.我简单说一下实现的过程 1.创建自定义View——BigImageView对B…
当需要实现html页面部分模块截图并具有保存图片功能时,前台直接生成截图并下载会方便的多.多的不说,直接看代码首先我们需要引入2个js文件: <script type="text/javascript" src="js/html2canvas.js"></script> <script type="text/javascript" src="js/jquery-1.12.3.min.js">…
VectorDrawable 矢量图 三部曲: Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图 Android 开发 VectorDrawable 矢量图 (二)了解矢量图属性与绘制 Android 开发 VectorDrawable 矢量图 (三)矢量图动画 简介——矢量动画2种方式与流程 矢量动画有一些不一样的细节,这里需要提前了解,否则容易在后续使用的时候困惑. 1.使用group包裹后的动画,为什么要使用它来包裹path?因为属性动…
众所周知,互联网是一个资源共享的地方,在网络上,我们可以分享我们所有认为好的资源.而随着互联网信息爆发式的增长,我们习惯了一键分享功能,比如:微博分享.微信分享.QQ空间分享.人人网分享等等.由此可见分享是很重要的一个客户体验功能,那在移动端,我们怎样实现分享功能呢? 从Android系统的社会分享功能来看,实现手段主要有两种:一种是通过系统自带的来启动分享功能:第二种是通过第三方的SDK插件进行分享:具体实现方式如下. 一.Android系统启动分享功能 系统启动分享功能很简单,实现也很容易,…