Unity--截取屏幕任意区域

原地址:http://blog.csdn.net/tanmengwen/article/details/8501612

void Update () {
        if(Input.GetKeyDown(KeyCode.A))
        {
            StartCoroutine(getScreenTexture());
                           //unity 自带截屏,只能是截全屏
            Application.CaptureScreenshot("shot.png");
        }
    }

    public int capx=0;
    public int capy=0;
    public int capwidth=700;
    public int capheight=500;
    IEnumerator getScreenTexture()
    {
        yield return new WaitForEndOfFrame();
        Texture2D t = new Texture2D(capwidth, capheight,TextureFormat.RGB24, true);//需要正确设置好图片保存格式
          t.ReadPixels(new Rect(capx,capy,capwidth,capheight), 0, 0, false);//按照设定区域读取像素;注意是以左下角为原点读取
        t.Apply();
        //二进制转换
        byte[] byt = t.EncodeToPNG();
        File.WriteAllBytes(Application.dataPath  + Time.time + ".png", byt);
    }

Unity--截取屏幕任意区域,布布扣,bubuko.com

时间: 2024-10-26 04:57:00

Unity--截取屏幕任意区域的相关文章

Opencv 截取图片中一部分的方法(包括任意区域)

对于图像的截取的方式很多都是对 IplImage* img 这种格式的进行操作的. 1.对cvMat操作其实非常的简单: Mat image= imreadimag): Rect rect(10, 20, 100, 50); Mat image_roi = image(rect); 另外:srcImage(rect).copyTo(roiImage)也可以达到同样的效果! 2.IplImage* img 从图里面截取矩形的操作一般是这个样子的: CvSize size= cvSize(40,50

图解js中常用的判断浏览器窗体、用户屏幕可视区域大小位置的方法

有时我们需要获得浏览器窗口或屏幕的大小.窗口下拉框下拉的距离等数据,对应这些需求,js中提供了不少解决方法,只是数量稍多容易混淆它们各自的意义,下面咱们用图例来解释下12个常见对象属性的作用. 其中有6个常用的浏览器窗体属性(由于offsetWidth/Height在不同浏览器下表现有出入,故不在本章讨论): document.documentElement.clientWidth document.documentElement.clientHeight document.documentEl

c++截取屏幕图片并保存(函数代码实现)

<strong> //获取桌面窗体的CDC CDC *pdeskdc = GetDesktopWindow()->GetDC(); CRect re; //获取窗体的大小 GetDesktopWindow()->GetClientRect(&re); CBitmap bmp; bmp.CreateCompatibleBitmap(pdeskdc , re.Width() , re.Height()); //创建一个兼容的内存画板 CDC memorydc; memorydc

Dialog(九)——利用WindowManager在屏幕任意位置添加Dialog

MainActivity如下: package cn.testalertdialog; import android.app.Activity; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.WindowManager; import andro

VB.NET屏幕指定区域截图代码,保存到Image中

VB.NET屏幕指定区域截图代码,保存到Image中 使用VB.NET实现屏幕上指定位置的图像进行截图功能,保存到Image中 Dim texthwnd As IntPtr texthwnd = FindWindowEx(0, 0, vbNullString, "等待输入验证码") Dim pl As SwtPj.WINDOWPLACEMENT GetWindowPlacement(texthwnd, pl) Dim image As Bitmap = New Bitmap(119,

截取屏幕的一块区域并且声称图片

在游戏开发过程中,我们经常遇到让我们分享截图的功能,这个时候首先要接入对应分享平台的SDK,然后在把截取的区域按照SDK相应的格式发送过去,达到相应的目的,接下来直接上代码, // Call after WaitForEndOfFrame. private IEnumerator ShareToSocialNetworkShareOnly_Internal(RectTransform shareArea) { yield return new WaitForEndOfFrame(); var r

根据size截取屏幕中间矩形区域

代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(50, 100, 200, 200)]; imageView.backgroundColor=[UIColor redColor]; //显示截取的图 imageVie

unity ugui屏幕适配

1.unity分为2D和3D两种模式,分别对应camera组件的Projection选项,如果是Perspective,就是透视投影(3D模式),如果是Orthographic,就是正交投影(2D模式): 2.unity自带的ugui当中Canvas对象下的Canvas组件当中的Render Mode选项为Screen Space - Overlay时,消耗的draw call相对较少: 3.unity自带的ugui当中Canvas对象下的Canvas Scaler组件的Reference Pi

屏幕指定区域识别

零.相关说明: 首先进行一下相关说明.在“jsxyhelu.cnblogs.com/项目实战派”栏目里面出现的需求.图片和其他资源,都是我在浏览威客网站.论坛等网站的时候通过正规渠道获得的真实需求.个人觉得比较感兴趣,但是由于时间或者工作的冲突自己没有去接这些项目.但是由于这些需求都很有实现价值,所以过了一段时间,仍然拿出来练一练手,并且实现了核心模块.希望能够给浏览者一些启发.如果你认为这些图片和资源放在这里不合适,请及时联系我([email protected]),我会及时处理的.此外,我会