Windows Phone截取当前屏幕保存图像的代码

导入命名空间

using System.Windows.Media.Imaging;
using System.IO;
using Microsoft.Xna.Framework.Media;

代码:

public void CaptureScreen(object sender, EventArgs e)
{
    WriteableBitmap bmp = new WriteableBitmap(480, 800);
    bmp.Render(App.Current.RootVisual, null);
    bmp.Invalidate();

    MemoryStream stream = new MemoryStream();
    bmp.SaveJpeg(stream, bmp.PixelWidth, bmp.PixelHeight, 0, 80);
    stream.Seek(0, SeekOrigin.Begin);

    MediaLibrary library = new MediaLibrary();
    string fileName = "ScreenShot_" + DateTime.Now.ToString("yyyy-mm-dd_hh:mm:ss");
    library.SavePicture(fileName, stream);
    stream.Close();

    Dispatcher.BeginInvoke(() =>
    {
        PictureCollection picCollection = library.Pictures;
        foreach (Picture item in picCollection)
        {
            if (item != null)
            {
                BitmapImage bitmap = new BitmapImage();
                bitmap.SetSource(item.GetImage());
            }
        }
    });
}

转自:http://www.cnblogs.com/wzwyc/p/4180631.html

时间: 2024-10-06 19:52:14

Windows Phone截取当前屏幕保存图像的代码的相关文章

截取整个屏幕的内容(截图代码)

下面这段代码功能是截取整个屏幕的图片内容,我已经给大家抽取成方法,大家在使用的时候可以直接将代码拿到项目中便可使用了,代码如下: 1 /** 2 直接截取屏幕内容,返回一个image(这个方法的功能就是截图) 3 */ 4 - (UIImage *)screenImage{ 5 6 UIWindow *window = [UIApplication sharedApplication].keyWindow; 7 //开启图形上下文 8 UIGraphicsBeginImageContext(wi

C++ 在Windows下截取整个屏幕 和 指定句柄窗口的屏幕

#include <windows.h> #include <stdint.h> #include <stdio.h> void ShootScreen(const char* filename, HWND hWnd) { HDC hdc = CreateDC("DISPLAY", NULL, NULL, NULL); int32_t ScrWidth = 0, ScrHeight = 0; RECT rect = { 0 }; if (hWnd =

openCV—Python(2)—— 载入、显示和保存图像

一.函数简单介绍 1.imread-读取图像 函数原型:imread(filename, flags=None) filename:读取的图像路径名:比如:"H:\img\lena.jpg". flags:彩色图or灰色图,1:表示彩色图.0:表示灰色图. 2.imshow-显示图像 函数原型:imshow(winname, mat) winname:窗体名字.比如:"Lena". mat:要显示的图像矩阵. 3.imwrite-保存图像 函数原型:imwrite(

openCV—Python(1)—— 加载、显示和保存图像

一.函数简介 1.imread 函数原型:imread(filename, flags=None) filename:读取的图像路径名:例如:"H:\img\lena.jpg". flags:彩色图or灰色图,1:表示彩色图:0:表示灰色图. 2.imshow 函数原型:imshow(winname, mat) winname:窗口名字:例如:"Lena". mat:要显示的图像矩阵. 3.imwrite 函数原型:imwrite(filename, img, pa

uwp开发:截取当前屏幕中需要的图像并保存至应用内存储

在uwp开发中,有时候需要获取当前屏幕中的图像信息,但是又不适合直接截图保存,因为截图会保存整个屏幕的图像,而且,还需要用户会截屏操作.总之不适合获取屏幕中需要的图像信息.注意题目中的“需要的”. 意思是什么呢?就是我们可以获取当前屏幕中任意一个UIElement中的图像.废话不多说,还是以实战场景为例,因为自己最近就遇到了这种情况. 在做<简影UWP>的“电影台词”模块的时候,显示如下: 需求是:是用户点击保存图片,将会把图片和文字一块保存下来,查看的时候,也是当前显示的这样. 首先贴上前台

monkeyrunner对比屏幕局部图像.getSubImage()

monkeyrunner对比屏幕局部图像.getSubImage() monkeyrunner执行测试时使用.takeSnapshot()截图,默认截取整个屏幕,包含了系统的状态栏.真实手机状态栏中包含如电量/信号量/消息提示等变量,使用.sameAs()对比整个屏幕的截图时就很容易出现错误.而使用.getSubImage()获得局部图像,然后再进行对比,就减少了monkeyrunner执行结果出错的概率. monkeyrunner使用getSubImage()获取截图局部图像,示例如下: #第

将屏幕保存为图片 将当前MFC程序保存为图片 c++ vc

将屏幕保存为图片,使用vs2008编译通过. [cpp] view plaincopy #include "stdafx.h" #include <windows.h> #include <atlimage.h> int __stdcall WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { HWND hwnd = ::GetDesktop

Android 图板之保存图像

(1)为了能适应多种屏幕尺寸的手机,我们在创建图像的时候就要根据用户手机屏幕的宽高像素来创建. (2)该软件将把图形保存到sdcard中,在保存之前,需要检测sdcard是否存在,是否可写入.如通过以上检查,就保存图像. 首先,我们应该检测sdcard的状态,如果不可写入,则给出提示: public void saveBitmap() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOU

【OpenPose-Windows】运行OpenposeDemo.exe 如何保存图像运行结果及关节点信息

跑过很多次openposeDemo了,不管是video.Webcam还是Images,都是运行结果一闪而过,然而我们所要的肯定不是只看一下运行结果就完事的,很多情况下,我们都希望能够把运行结果的图像.关节点坐标信息.人数统计等数据信息全部保存下来,以便于我们对openpose进行更加深入的分析和应用,那么这篇博客的作用就是告诉大家如何把这些运行结果保存下来. openposeDemo的程序运行结果的保存,其实有两种方式,一种便是直接使用官方Github的openpose demo的1.0.1的发