虚拟相机调取相册照片机失败

如何用html5调取照相机功能_百度知道
如何用html5调取照相机功能
怎么用html5调取照相机功能?求代码,求指点,谢谢了
提问者采纳
}复制代码至此B&#47, 0. 额外说一句;
document.ToString(): &quot:none&quot。&lt。如果出现异常则表示不支持
document: base64Data };Video capture error.src = window.ImageF/&#47.;
).webkitGetUserMedia) {
canvas style=&
img =);/2d&quot.;script&success&quot.Save(这段代 主要是获取摄像头的视频流并显示在Video 签中
snap&quot,
video = document,要在浏览器获取本地摄像头只有通过插件(ActiveX。(jquery)&lt,而且你也可以不用去学).webkitGetUserMedia(videoObj.getContext(&.code),用于将PNG 式照片转为canvas&/video&判断浏览器是否支持HTML5 Canvas
&#47.src = stream, status) {
if (status == &&#47.MapPath(&输出调用结果
catch (Exception msg)
img =img&quot.webkitURL。今天学了学html5中的Canvas结合新增的&lt.getElementByIdx(&&#47.。;)。;button id=&) + G),);div&video& width=&DOMContentLoaded&将流转回I复制代码最后的就是接收经过base64编码之后的图像文件了; 拍照&canvas&quot.Jpeg),
} else if (blogs,爱不释手了,并获取他2Dcontexthtml5概念啥的就不废话了;display.addEventListener(&数据上 失败&quot, 为单击拍照按钮就获取了当前图像;div id=&/contentHolder&quot,但是这种只有IE支持)或者是flash来获取(或许你没学过flash那就很坑爹了);canvas&&#47, errBack).onload = function () {
/开始异步上
$.NewGuid();浏览器支持HTML5 CANVAS&标签来获取本地摄像头;#snap&/
}, 0.getElementByIdx(&canvas&quot, &quot.IO;&#47.createObjectURL(stream);/&#47.getElementByIdx(&&#47。 public void ProcessRequest (HttpContext context) {
string img.play();
imgae.drawImage(以下开始编 数据
var imgData =uploadImgCode,欢迎指教.html" target="_blank">
catch (e) {
document,在html5的世界里;];保存图片
OK&);;).IO;&320&
});&#47.Write(&
&lt.Stream stream = new S
/。;button&
/video&; autoplay&/&接收经过base64编 之后的字符串
浏览器不支持HTML5 CANVAS&quot.getElementByIdx(&&#47.FromBase64String(img);IE7那您还是别玩html5了.ICatchCode(); /320&quot,要获取本地摄像头;.Drawing.FromStream(stream);复制代码下面这个是主要代码了, 谷歌一堆;video&quot,
videoObj = { &/
context.jpg&quot,
context =这个是拍照按钮的事件,有其他用途
var canvans = document,但这些都比较麻烦;/), false);
&;#snap&在前端截取22位之后的字符串作为图像数据
&#47.Svideo id=&/jerry_cong/archive//2047143;二维 已经解析&/
};&#47,测试代 ;script&gt.ToString()+&Test/&#47,
errBack = function (error) {
console.ContentType = &quot.getUserMedia这个写法在Opera中好像是~&#47,只要配合js就可以轻松获取;;
alert(&&#47.getContext(&quot.innerHTML = &
&lt.MemoryStream(imgBytes);support&这个是 刷新上 图像的
function CatchCode() {
if (data == &quot, function (stream) {
video.D&300&quot, 320;
}; width=&quot.初出茅庐;获取浏览器页面的画布对象
/&#47.D alert(data).substr(22);)./&#47,在html5之前.getUserMedianow
if (navigator。目前支持html5的浏览器(参考<a href="http.click(),压缩体积以便保存;
/实际运用可不写;将图像转换为base64数据
var base64Data = imgD将字节数组转换为字节流
/ id=&quot://将base64字符串转换为字节数组
System, function (stream) {
alert(&support&/)://320&quot,如果您还在用IE6&#92.Request[&
//.; height=&text/ height=&).Response.getElementByIdx(&);//2d&定时器
var interval = setInterval(CatchC&#47: true };);video&
}。不在像以前需要写一堆烦人的东东了.html)看看主要代码吧, errBack);), { &quot。; style=&OK&quot:这个是前台HTML的代码, function (
&lt.R /&#47.innerHTML = &quot.post(&quot.getUserMedia(videoObj。HTML5的强大之处; &#47.com/jerry_cong/archive//2047143;img&canvas&gt, 320), &quot.click(function () {
context.Write(msg);动态创建一个canvas元 .getUserMedia) {
navigator:none&quot.log(&quot, function () {
var canvas = document。
S/;S通过本地摄像头拍照上传就完成了;320&
&#47,不知道的 百度,在之后微软的silvertlight中也可以获取;
}.Image imgae = System.play().toDataURL(), S
return.ashx&text&plain&获取base64字符串
byte[] imgBytes = Convert!.createElement(&quot
按您给的试了一下,没好用,您能给我一个完整的实例代码吗?我真的不是很懂,但是单位要做这个功能……请指教哈
提问者评价
来自团队:
其他类似问题
为您推荐:
html5的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁63673人阅读
打开相机:
//先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeC
if (![UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) {
sourceType = UIImagePickerControllerSourceTypePhotoL
//sourceType = UIImagePickerControllerSourceTypeC //照相机
//sourceType = UIImagePickerControllerSourceTypePhotoL //图片库
//sourceType = UIImagePickerControllerSourceTypeSavedPhotosA //保存的相片
UIImagePickerController *picker = [[UIImagePickerController alloc] init];//初始化
picker.delegate =
picker.allowsEditing = YES;//设置可编辑
picker.sourceType = sourceT
[self presentModalViewController:picker animated:YES];//进入照相界面
[picker release];
打开相册:(区分pad和iphone)
for iphone:
UIImagePickerController *pickerImage = [[UIImagePickerController alloc] init];
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
pickerImage.sourceType = UIImagePickerControllerSourceTypePhotoL
//pickerImage.sourceType = UIImagePickerControllerSourceTypeSavedPhotosA
pickerImage.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:pickerImage.sourceType];
pickerImage.delegate =
pickerImage.allowsEditing = NO;
[self presentModalViewController:pickerImage animated:YES];
[pickerImage release];
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypePhotoL
//sourceType = UIImagePickerControllerSourceTypeSavedPhotosA //保存的相片
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate =
picker.allowsEditing = NO;//是否允许编辑
picker.sourceType = sourceT
如果从一个导航按钮处呈现,使用:
presentPopoverFromBarButtonItem:permittedArrowDirections:animated:;
如果要从一个视图出呈现,使用:
presentPopoverFromRect:inView:permittedArrowDirections:animated:
如果设备旋转以后,位置定位错误需要在父视图控制器的下面方法里面重新定位:
didRotateFromInterfaceOrientation:(在这个方法体里面重新设置rect)
然后再次调用:
- (void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated
//UIPopoverController只能在ipad设备上面使用;作用是用于显示临时内容,特点是总是显示在当前视图最前端,当单击界面的其他地方时自动消失。
UIPopoverController *popover = [[UIPopoverController alloc]initWithContentViewController:picker];
self.imagePicker =
//permittedArrowDirections 设置箭头方向
[self.imagePicker presentPopoverFromRect:CGRectMake(0, 0, 300, 300) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
[picker release];
[popover release];
点击相册中的图片 货照相机照完后点击use &后触发的方法
- (void)imagePickerController:(UIImagePickerController *)picker&didFinishPickingMediaWithInfo:(NSDictionary
点击cancel 调用的方法
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
例子下载地址:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1006484次
积分:10486
积分:10486
排名:第877名
原创:201篇
评论:298条
(1)(2)(1)(4)(1)(2)(5)(3)(4)(5)(4)(6)(2)(7)(2)(2)(19)(9)(10)(8)(36)(22)(24)(23)Android开发
拍照有两种方式
一种:使用android.hardware.Camera
二种:使用Intent(“android.media.action.IMAGE_CAPTURE”)
当然还是第一种好,不过代码太复杂,以后有时间再说,这里就说一下第二种方式吧。
Intent i = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(i, Activity.DEFAULT_KEYS_DIALER);
} catch (Exception e) {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Bundle extras = data.getExtras();
Bitmap b = (Bitmap) extras.get("data");
ImageView img = new ImageView(this);
img.setImageBitmap(b);
setContentView(img);
这样,你拍到的照片就可以显示在ImageView中了。当然,你也可以保存这个Bitmap到文件。
经测试,SDK 1.5版中,测试出错,大概是因为用的是模拟器吧,SDK 1.1版中,程序可以拍到照片,但是尺寸有点小,不知道为什么。这里,我没有怀疑自己,应该是Android的bug,也或者是我没有找在设置图片尺寸的地方
转载地址:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:10次
排名:千里之外很久没写随笔了从ios6开始,webview支持html &input type="file"&标签,用来调取手机的相册和相机,但是没有权限提示,不知道是不是我写的有问题,手机对app禁用了相机,通过这个方法也能打开相机,但是不能拍照,怎么才能给用户友好的提示?之前都是系统自动提示的。安卓webkit 好像不支持这个标签,或者是我写的有问题,看到的,知道怎么解决的也帮解决一下吧。当然最好的办法就是,本地写好调用方法,html通过js调用本地方法,这样安卓、iOS都兼容,而且各自的问题还少。相机权限在哪里_百度知道
相机权限在哪里
进入安全中心——右下方授权管理——应用权限管理——下拉,隐私相关栏目里边,拍照和录像权限,问号是当这些应用调取相机时系统会询问你是否允许,勾是说应用可以直接调取相机,叉当然就是不允许调取。你可以自行设置
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 虚拟相机调取相册照片 的文章

 

随机推荐