bitmap

How to add a sticker in live android camera application? [closed]

萝らか妹 提交于 2020-03-03 12:18:11
问题 Closed . This question needs to be more focused. It is not currently accepting answers. Want to improve this question? Update the question so it focuses on one problem only by editing this post. Closed 10 days ago . I want to make simple sticker camera application. In Camera screen there will be a sticker and when the user press capture button it will capture the image with the sticker. Actually there will be two layers. One for camera picture and other for sticker. 回答1: I have made a similar

使用PyGtk Pixbuf及freetype-py 显示文本

爱⌒轻易说出口 提交于 2020-03-02 11:36:45
使用PyGtk Pixbuf及freetype-py 显示文本 计算机上显示文本的过程大体上是,先将文本转换成一个一个的bitmap,然后再用图形系统将这些bitmap显示出来。freetype是一个open source的字体引擎,它完成的工作即是将字符转换成bitmap。freetype-py是一个freetype的python绑定,为我们在Python code中使用Freetype接口提供便利。 我们可以结合PyGtk所提供的Pixbuf对象,一些操作像素的方法,PyGtk所提供的窗口管理系统,及freetype转换字符到bitmap的方法,来显示字符。这个过程的code可以像下面这样: #!/usr/bin/python ''' author: Wolf-CS website: http://my.oschina.net/wolfcs/blog last edited: May 2013 ''' import gtk, gtk.gdk import cairo import freetype import ctypes.util from ctypes import * class ColorMap: ''' A colormap is used to map scalar values to colors. It is build by adding couples

细节决定成败----Android应用程序的优化(二)

房东的猫 提交于 2020-03-02 06:08:16
本文章主要从软引用和弱引用的角度探讨Bitmap的内存优化。 Java从JDK1.2之后就将对象的引用分为4个级别:强引用、软引用、弱引用、虚引用。具体的概念不详述了。 软引用:当内存空间足够的时候,GC就不会回收它,内存空间不足了,就会回收。 弱引用:GC工作过程中,一旦发现了弱引用对象,不管内存足够与否,都会回收它的内存。 所以,从上述可以看出,软引用和弱引用的根本区别在于:只具有弱引用的对象拥有更短暂的生命周期,可能随时被回收。 当缓存大量的Bitmap时,比较容易造成OOM,所以可以考虑使用软引用技术来避免这个问题的发生。 //首先定义一个HashMap,保存软引用对象 private Map<string, SoftReference<Bitmap>> imageCache = new HashMap<String, SoftReference<Bitmap>>(); //保存Bitmap的软引用到HashMap public void addBitmapToCache(String path) { //强引用的Bitmap对象 Bitmap bitmap = BitmapFactory.decodeFile(path); //软引用的Bitmap对象 SoftReference<Bitmap> softBitmap = new SoftReference<Bitmap>

PostgresSQL-EXPLAIN

牧云@^-^@ 提交于 2020-03-02 00:55:17
13.1. 使用 EXPLAIN PostgreSQL 为给它的每个查询产生一个 查询规划 。 为匹配查询结构和数据属性选择正确的规划对性能绝对有关键性的影响。 因此系统包含了一个复杂的 规划器 用于寻找最优的规划。 你可以使用 EXPLAIN 命令察看规划器为每个查询生成的查询规划是什么。 阅读查询规划是一门值得写一个相当长的教程的学问, 而我这份文档可不是这样的教程,但是这里有一些基本的信息。 查询规划的结构是一个 规划节点 的树。 最底层的节点是表扫描节点:它们从表中返回原始数据行。 不同的表访问模式有不同的扫描节点类型:顺序扫描,索引扫描,以及位图索引扫描。 如果查询需要连接,聚集,排序,或者是对原始行的其它操作, 那么就会在扫描节点"之上"有其它额外的节点。 并且,做这些操作通常都有多种方法,因此在这些位置也有可能出现不同的节点类型。 EXPLAIN 的输出给规划树里面的每个节点都有一行输出, 显示基本的节点类型和规划器为执行这个规划节点计算出来的预计的开销值。 第一行(最上层的节点)是对该规划的总的执行开销的预计;这个数值就是规划器试图最小化的数值。 这里是一个简单的例子,只是用来显示输出会有些啥: [1] EXPLAIN SELECT * FROM tenk1; QUERY PLAN ------------------------------------------

Android 截取屏幕图片并保存

只愿长相守 提交于 2020-03-01 23:53:03
Android市场上有很多屏幕截图软件,把当前屏幕截取出来并保存,这一节我们就来看看屏幕截图的具体实现。 操作步骤:   1.创建一片屏幕大小的缓冲区,用于存放屏幕大小的图片 Bitmap bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888);   2.获取屏幕顶层View View screenView = context.getWindow().getDecorView();   3.开启绘图缓存并获取屏幕view缓存的Bitmap //开启绘图缓存 screenView.setDrawingCacheEnabled(true); //返回屏幕View的视图缓存 bitmap = screenView.getDrawingCache();   4.保存得到的bitmap,由于上一篇博客有保存图片的详细步骤,这里就不再赘述了,有需要的朋友可以看上一篇博客    http://www.cnblogs.com/tony-yang-flutter/p/3560433.html 下面是屏幕截图的核心代码: public void getScreenView(){ //获取窗口管理类,获取窗口的宽度和高度 WindowManager windowManager = context.getWindowManager();

sdcard存储图片下载简单操作

偶尔善良 提交于 2020-03-01 20:21:44
效果图示例: 步骤 -- 在配置清单添加完联网权限后 1、res/layout界面布局 代码 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ImageView android:id="@+id/imageview" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:id="@+id/bt_download" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="图片下载" android:onClick="Image_Download" /> </LinearLayout> ==================== 2

c#图片操作(水印)

*爱你&永不变心* 提交于 2020-03-01 19:50:04
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Drawing; using System.IO; namespace HuoLi.Common { public class PicOperate { #region 调用示例 /* 调用示例: //取的新图片文件的名称 string namestr = MakedownName(); newname = namestr + "." + objFile.ImageType; objFile.SaveAsVirtual("/Function/UpLoadPic/Temp_Pic/" + newname); string sourcepath = Server.MapPath("/Function/UpLoadPic/Temp_Pic/" + newname); string smallimg

C#使用Tesseract OCR 解析验证码

孤街醉人 提交于 2020-03-01 14:20:35
下面介绍一个开源的OCR引擎Tesseract2。值得庆幸的是虽然是开源的但是它的识别率较高,并不比其他引擎差劲。网上介绍Tessnet2也是当时时间排名第三的识别引擎,只是后来慢慢不维护了,目前是Google在维护,大家都知道Google 在搞电子图书馆,每天都有不同类目的书被扫描成电子版。所以有G老大维护,识别率差不到哪里去。呵呵。。别鄙视我。。。 Tessnet2 是用vc ++ 开发的,其中是生成Tessnet2.dll ,我们可以通过.net 来调用内部具体类库实现识别。 Tessnet2的使用: 1、点击 http://files.cnblogs.com/zhuxiangyu/tessnet2_32.rar 链接下载Tessnet2.dll , Tessnet2是支持多国语的。语言包下载链接: http://code.google.com/p/tesseract-ocr/downloads/list 2、将Tessnet2.dll 添加到vs 引用中,和添加.net程序集一样。 3、用Tessnet2进行识别 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 WebRequest request = WebRequest.Create( " http://sz.2zf.cn/js/code2.asp " ); WebResponse

Android有用代码片段(四)

走远了吗. 提交于 2020-03-01 02:46:42
不知不觉中,就收集了超过60条的自己感觉有意思的代码片段,分为三篇文章: android有用代码片段 、 Android有用代码片段(二) 、 Android有用代码片段(三) 这三篇,今天,开始第四篇的整理! 六十一、Android创建桌面快捷方式: [java] view plain copy print ? /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent( "com.android.launcher.action.INSTALL_SHORTCUT" ); //快捷方式的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name)); shortcut.putExtra( "duplicate" , false ); //不允许重复创建 //指定当前的Activity为快捷方式启动的对象: 如 com.everest.video.VideoPlayer //注意: ComponentName的第二个参数必须加上点号(.),否则快捷方式无法启动相应程序 ComponentName comp = new ComponentName( this .getPackageName(), "

解决Android studio无法使用BufferedImage获取图片RGB问题

纵然是瞬间 提交于 2020-02-29 21:49:52
原因:Android有自己的图像包 代码: //以文件流的方式读取图片 FileInputStream fis = new FileInputStream ( "/sdcard/test.png" ) ; Bitmap bitmap = BitmapFactory . decodeStream ( fis ) ; picture . setImageBitmap ( bitmap ) ; int height = bitmap . getHeight ( ) ; //图片的高度 int width = bitmap . getWidth ( ) ; //图片的宽度 int pixel ; for ( int i = 0 ; i < width ; i ++ ) //可自行更改起点位置 for ( int j = 0 ; j < height ; j ++ ) { pixel = bitmap . getPixel ( i , j ) ; //下面三行获取像素点(i, j)的RGB值 rgbR = ( pixel & 0xff0000 ) >> 16 ; rgbG = ( pixel & 0xff00 ) >> 8 ; rgbB = ( pixel & 0xff ) ; System . out . println ( "i=" + i + ",j=" + j + ":(" +