php调用chromium截图,chromium截图实现
声明:本blog是我自己写的,如果要转载,请注明:come from blog of niba!
chromium最终显示是在ContentView上,但通过硬件加速,渲染合成的网页之前是在surfaceview上的。
所以,实现chromium的截图可以通过SufraceView的截图去实现。
自己创建一个SurfaceView的子类,如下:
class ChromiumSurfaceView extends SurfaceView {
public ChromiumSurfaceView(Context context){
super(context);
}
@Override
public void onDraw(Canvas canvas) {
// We only need to draw to software canvases, which are used for taking screenshots.
if (canvas.isHardwareAccelerated()) return;
Bitmap bitmap = Bitmap.createBitmap(getWidth(), getHeight(),
Bitmap.Config.ARGB_8888);
if (nativeCompositeToBitmap(mNativeContentViewRenderView, bitmap)) {
canvas.drawBitmap(bitmap, 0, 0, null);
}
}
public void getBitmap(Canvas canvas){
this.onDraw(canvas);
}
}
通过方法getBitmap()间接去调用onDraw方法来实现将内容,进行绘制。
public void getScreenShot() {
Bitmap bitmap = Bitmap.createBitmap(getWidth(), getHeight(), Bitmap.Config.ARGB_8888);
Canvas bitCanvas = new Canvas(bitmap);
((ChromiumSurfaceView)mSurfaceView).getBitmap(bitCanvas);
try{
File file = new File("/data/data/com.hisense.goblin/test.jpeg");
FileOutputStream fos;
fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 5, fos);
fos.close();
}catch(Exception e){
e.printStackTrace();
}
}
通过这个方法就可以实现截屏了。
关于SurfaceView的其他信息,可以参考其他的blog,网上讲的很多,这里不再赘述
原文:http://blog.csdn.net/u011882998/article/details/32708811
php调用chromium截图,chromium截图实现相关推荐
- php ffmpeg截图,PHP调用ffmpeg对视频截图并拼接脚本
这篇文章主要介绍了PHP调用ffmpeg对视频截图并拼接脚本 PHP脚本调用ffmpeg对视频截图并拼接,供大家参考,具体内容如下 目前支持MKV,MPG,MP4等常见格式的视频,其他格式有待测试 1 ...
- python截图直接在内存里调用_python 使用win32api截图全解释
1.获得应用窗口句柄 hwnd=win32gui.FindWindow(0,"窗口名字") 2.通过应用窗口句柄获得窗口DC hwndDC=win32gui.GetWindowDC ...
- Ubuntu中类似QQ截图的截图工具并实现鼠标右键菜单截图
文章目录 简介: 安装: 设置快捷键: 实现鼠标右键菜单截图: 简介: 在Windows中用惯了强大易用的QQ截图,会不习惯Ubuntu中的截图工具. 软件名为火焰截图,功能类似QQ截图,可以设置快捷 ...
- 计算机截图工具无法运行,win10系统打开截图工具提示“截图工具当前未在计算机上运行”的解决办法...
win10系统使用久了,好多网友反馈说win10系统打开截图工具提示"截图工具当前未在计算机上运行"的问题,非常不方便.有什么办法可以永久解决win10系统打开截图工具提示&quo ...
- wi ndows自带截图工具,win10自带截图工具怎么使用?win10用自带截图工具截图的方法...
win10系统自带有一个截图工具,可以帮助大家快速截取屏幕内容,非常实用.虽然网上有很多第三方截图软件,但是还要下载,比较麻烦.虽然QQ和微信也有截图功能,但每次都要登录,比较麻烦.那么win10自带 ...
- mac截图快捷键+截图工具软件+方法教程
苹果 的MAC电脑就是专 门 为办公人士以及作图人士所设计生产的,同时它的安全性以及它的屏幕分辨率非常高,因此苹果的MAC电脑深受人们的喜欢. 而苹果MAC为了可以方便人们的使用,它为人们优化了非常多 ...
- 谷歌浏览器怎么长截图怎么截_谷歌浏览器长截图怎么截图_chrome谷歌浏览器截长图的步骤-win7之家...
大家在使用浏览器浏览网页的时候,有时候会想要将网页截取下来,可是如果使用平时用的截图工具的话,只能截取一部分而已,如果你使用的是谷歌chrome浏览器的话,就可以进行长截图了,那么谷歌浏览器长截图怎么 ...
- 调用摄像头_摄像头 | 浏览器调用摄像头并实现截图保存的效果
为了在QT上实现打开摄像头,拍照等操作.就写了这个. 1. 写一个vue组件 先写一个vue的组件,其内容基本如下: <el-button type="primary" @ ...
- 调用Windows api 窗口截图
分别调用windows api函数及CVI自带函数,完成对GRAPH界面的截图 界面设计如下图,右侧为graph控件的位置信息,调用API函数是完成对于选择窗口的固定位置进行截图,调用CVI自带函数则 ...
最新文章
- 韩顺平php程序员算法
- 【Unity 3D 游戏开发】Unity3D 入门 - 工作区域介绍 与 入门示例
- Spring--Redis入门集成配置
- mongodb 字符串 截取_Mongodb split字符串后分组统计
- android shell用户界面,shell界面下安装和卸载Android应用程序(apk包)
- 使用sax解析xml
- seata分布式事务一致性锁机制如何实现的
- Bugtags 实时跟踪插件 - BugtagsInsta
- 全国计算机等级考试网络版客户端,Sctest计算机等级考试系统网络版
- 在注视之外:对于认知和认知发展研究,眼动追踪还能揭示什么?
- python数据结构题目_python数据结构_递归python数据结构_python数据结构 面试题 - 云+社区 - 腾讯云...
- jsp中空格字符怎么写_jsp空格符号怎么打
- mongo命令行时间字段范围查询的坑
- NBUT 1451 Elise (暴力+并查集)
- 疫情下的春招实习历程
- 内大计算机学院研究生奖学金,计算机学院2020级硕士研究生学业奖学金评审结果公示...
- 分享一个统计 Android 模块构建时长的脚本工具
- windows模拟微信小程序_【原创】PC微信小程序包解密工具C#版无需root或模拟器
- 10款炫酷的HTML5动画特效,附源码
- MessageBox.Show用法