`
crazysumer
  • 浏览: 49812 次
社区版块
存档分类
最新评论

【2013.07.16】关于自定义相机照片尺寸设定和预览图片拉伸处理

阅读更多

1.相机照片的尺寸只有几种固定的,2592×1936,2048×1536,1600×1200,1024×768,320×240等,这些尺寸还要物理设备支持才有。设置照片的尺寸(当然要设备支持),在给相机的参数设置中去设定。

 

2.自定义相机时照片预览拉伸。因为照片的尺寸跟自定义的SurfaceView比例不同的原因。先设置照片的尺寸,再根据照片的尺寸去设置预览的尺寸。

 

@Override
	public void surfaceChanged(SurfaceHolder holder, int format, int width,
			int height) {

		Parameters parameters = camera.getParameters();// 获得相机参数
		parameters.setPictureSize(1024, 768);
		Size size = parameters.getPictureSize();
		double w = size.width;
		double h = size.height;

		if (width > height) {
			this.setLayoutParams(new LinearLayout.LayoutParams(
					(int) (height * (w / h)), height));
		} else {
			this.setLayoutParams(new LinearLayout.LayoutParams(width,
					(int) (width * (h / w))));
		}
		parameters.setPreviewSize(width, height); // 设置预览图像大小
		parameters.setPictureFormat(PixelFormat.JPEG); // 设置照片格式

		camera.setParameters(parameters);// 设置相机参数
		camera.startPreview();
	}

 

 

遇到setParameters failed 错误,是因为自定义SurfaceView控件的宽和高设置成了固定的大小,设置成wrap_content才行

 

    <com.saya.CameraView
        android:id="@+id/cameraView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </com.saya.CameraView>

 

 

 

 

 

传送门:http://www.devdiv.com/android_camera_-blog-67600-6759.html

分享到:
评论

相关推荐

    Android中关于自定义相机预览界面拉伸问题

    在Android开发中,自定义相机预览界面的拉伸问题是一个常见的挑战,尤其是在处理不同设备和屏幕方向变化时。本文将深入探讨这个问题,并提供解决方案。 首先,理解问题的根本原因至关重要。当我们在Android应用中...

    android.hardware.camera2自定义相机

    在Android平台上,`android.hardware.camera2`是官方提供的高级相机API,它提供了更精细的控制和更高的灵活性,使得开发者能够创建具有专业级别的自定义相机应用。这个API在Android 5.0(API级别21)引入,替代了...

    android自定义相机黑屏问题.doc

    总之,针对Android自定义相机黑屏问题,开发者应该注意设备之间的差异,并使用如`getOptimalPreviewSize()`这样的工具函数来确保选择合适的预览尺寸。避免直接硬编码预览和拍照尺寸,以提高应用在不同设备上的兼容性...

    TextureView实现自定义相机预览、拍照

    至于自定义调整照片,例如裁剪、旋转或添加滤镜等,通常需要在拍照后的图片处理阶段完成。我们可以使用Bitmap类提供的方法来处理图像,或者使用第三方库如Picasso、Glide或 GlideWith等进行更复杂的图像操作。 在...

    ios-关于相机的操作自定义相机,新增缩放,聚焦功能。.zip

    这个项目的“customCamera”文件很可能是项目源代码,包括Swift或Objective-C的类和界面布局文件,可能包含相机预览视图、聚焦和缩放手势处理、以及照片捕获等功能的实现。通过学习和理解这些代码,开发者可以了解...

    fastReport 2013.2.5 for netframework 4

    4. **脚本支持**:FastReport支持内置的脚本语言,允许在报表设计时添加自定义逻辑,增强报表的计算和处理能力。 5. **预览和打印**:除了设计报表,FastReport还提供了强大的预览功能,用户可以在设计阶段预览报表...

    Intel Visual Fortran Composer XE 2013.lic

    4. 更丰富的库支持:Fortran 2013引入了更多的内置库函数,如随机数生成、日期和时间处理等,以增强其功能性和便利性。 Intel Visual Fortran Composer XE 2013则充分利用了这些新特性,为用户提供了一个集成开发...

    Android自定义相机所需文件.rar

    在Android开发中,自定义相机是一项常见的需求,它允许开发者根据应用的需求定制相机界面和功能。这个名为"Android自定义相机所需文件.rar"的压缩包包含了一种原生的实现方式,利用了Android的SurfaceView和Camera ...

    IBExpert 2013.2.20 单文件和谐版

    IBExpert 2013.2.20 单文件和谐版,谁用谁知道。

    身份证拍照Android自定义相机

    我们还需要监听`SurfaceHolder`的回调事件,如`SurfaceCreated`、`SurfaceChanged`和`SurfaceDestroyed`,以便在相机准备就绪时启动预览,在界面变化时调整预览尺寸,以及在界面销毁时释放相机资源。 接下来是相机...

    基于fabric.js和Vue的图片编辑器,可自定义字体、素材、设计模板。

    基于fabric.js和Vue的图片编辑器,可自定义字体、素材、设计模板。fabric.js and Vue based image editor, can customize fonts, materials, design templates.zip

    安卓自定义简单相机

    总的来说,自定义安卓相机涉及多个方面,包括界面设计、相机API的使用、图片处理以及权限管理。通过不断实践和学习,可以构建出满足特定需求的相机应用。这个过程不仅可以提高开发者对安卓系统的理解,也有助于提升...

    Android自定义拍照解决部分手机拍完之后图片不清楚的问题

    - 确保正确设置相机预览尺寸(`previewSize`)和图片输出尺寸(`pictureSize`)。这两者应该匹配或尽可能接近,以减少图像拉伸和失真。 - 使用设备支持的最佳分辨率,通常可以通过`Camera.Parameters....

    Android自定义相机实现3连拍

    本篇文章将深入探讨如何实现一个具有3连拍功能的Android自定义相机,并涉及拍照后的处理,如提交和判断等操作。 首先,我们要创建一个自定义相机界面。在Android中,这通常通过继承`SurfaceView`并实现`...

    Excel 自定义.exportedUI

    本人自己用的excel2010自定义工具。使用时导入即可。有时候我们在预览或打印或另存等快捷操作时,不容易找到。我把常用的添加了进去。,需要的可以下载。

    opnet教程-陈敏

    5.1 收集统计量................................................................................................ 115 5.1.1 收集矢量统计量....................................................................

    自定义相机(选择曝光度)源码

    在Android开发中,自定义相机是一项常见的需求,它允许开发者根据特定的应用场景或者用户体验来定制相机功能。这个“自定义相机(选择曝光度)源码”项目正专注于提供这样一个功能,让用户可以调整相机的曝光度,...

    自定义相机拍照购

    通过分析和学习这个项目源码,开发者可以快速掌握自定义相机和图片搜索的相关技术,为自己的应用添加类似功能。 总结,"自定义相机拍照购"涉及到移动应用开发中的相机使用、动画设计和图像处理等多个方面,是一个...

    ScrollView实现图片拉伸效果,仿QQ好友动态头部效果

    在Android开发中,创建一个类似QQ好友动态头部的图片拉伸效果是一个常见的需求,它可以提供一个优雅的用户体验,特别是当用户滚动时,头部图片能够随着滚动动态地放大或缩小。这个效果主要通过ScrollView和自定义...

    xamarin android相机使用实例源码及水印菜单

    在Xamarin.Android开发中,利用C#语言进行相机功能的集成和自定义是常见的需求。本实例源码提供了Xamarin.Android应用中相机的使用方法,包括拍摄照片和添加水印的功能,这对于创建图像处理或者社交媒体类应用至关...

Global site tag (gtag.js) - Google Analytics