通过获取窗口句柄,然后获取窗口DC,然后画图

 #include <Windows.h>
#include <stdio.h> //桌面画线
void drawLine()
{
//获取控制台窗口
//HWND hwnd = GetConsoleWindow();
//获取输出
//HDC hdc = GetDC(hwnd);
//获取桌面窗口
HWND hwnd = GetDesktopWindow();
//获取输出
HDC hdc = GetWindowDC(hwnd);
HPEN hpen = CreatePen(PS_SOLID, , RGB(, , ));
SelectObject(hdc, hpen);//选中笔
while ()
{
LineTo(hdc, , );
Sleep();
LineTo(hdc, , );
Sleep();
LineTo(hdc, , );
Sleep();
LineTo(hdc, , );
Sleep();
LineTo(hdc, , );
Sleep();
LineTo(hdc, , );
} system("pause");
} //桌面或者控制台显示图片
void drawPic()
{
//获取控制台窗口
//HWND hwnd = GetConsoleWindow();
//获取输出
//HDC hdc = GetDC(hwnd);
//获取桌面窗口
HWND hwnd = GetDesktopWindow();
//获取输出
HDC hdc = GetWindowDC(hwnd);
HBRUSH brush = CreateSolidBrush(RGB(, , ));
SelectObject(hdc, brush);//选中笔
while ()
{
Rectangle(hdc, , , , );
Sleep();
}
system("pause"); } //桌面输出文字
void drawText()
{
HWND hwnd = GetDesktopWindow();
HDC hdc = GetWindowDC(hwnd);
SetTextColor(hdc, RGB(, , ));
//设置背景
SetBkColor(hdc, RGB(, , )); while ()
{
HFONT hfont, hfontold;
hfont = CreateFontA(
,
,
,
,
FW_REGULAR,
FALSE,
FALSE,
FALSE,
GB2312_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
PROOF_QUALITY,
FIXED_PITCH | FF_MODERN,
"隶书"
); //选择字体
hfontold = SelectObject(hdc, hfont);
//在区域输出文字
/*RECT rctext;
rctext.left = 10;
rctext.top = 10;
rctext.right = 800;
rctext.bottom = 800;
DrawTextA(hdc, "桌面文字输出测试", strlen("桌面文字输出测试"), &rctext, DT_CENTER);*/
TextOutA(hdc, , , "桌面文字输出测试", strlen("桌面文字输出测试"));
SelectObject(hdc, hfontold);
Sleep();
}
} void main()
{
//drawPic();
//drawLine();
drawText();
system("pause");
}
  • 桌面绘图

     #include <stdio.h>
    #include <stdlib.h>
    #include <windows.h> void main()
    {
    HWND hwnd = GetConsoleWindow();
    HDC hdc = GetDC(hwnd);
    //创建兼容DC
    HDC memdc = CreateCompatibleDC();
    //载入位图
    HBITMAP bit = LoadImageA(hwnd, "C:\\Users\\Administrator\\Desktop\\1.bmp", IMAGE_BITMAP, , , LR_LOADFROMFILE | LR_CREATEDIBSECTION);
    //位图有兼容DC绑定
    SelectObject(memdc, bit);
    //兼容DC与hdc绑定
    BitBlt(hdc, , , , , memdc, , , SRCCOPY); system("pause");
    }

117.C语言实现桌面输出图片,桌面输出文字,桌面画线的更多相关文章

  1. 找回误删除的UBUNTU16.04桌面壁纸图片,或把桌面背景图片另存。20170114

    今天遇到一个小问题,之前下载并设置为桌面壁纸的一张图片在整理文件的时候不小心删除了.由于想不起来当时从哪里找到的图,所以就想把当前桌面壁纸重新保存.经网上查询,未见正确的保存方法,故写在此处备忘. 1 ...

  2. LODOP直接用base64码输出图片

    Lodop中的ADD_PRINT_IMAGE,也可以直接输出base64码图片,不用加img标签,如果加了img标签,会被当做超文本对待,受浏览器引擎解析的影响. 什么时候使用base64码直接输出比 ...

  3. 用java实现给图片增加图片水印或者文字水印(也支持视频图像帧添加水印)

    javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置.大小.粗度.翻转.平滑等操作 javaCV图像处理之2:实时视频添加图片水 ...

  4. Java给图片和PDF文件添加水印(图片水印和文字水印)

    有时候我们看到的图片或者PDF文件会自动加上水印.分为文字水印和图片水印. ----------------------------图片水印---------------------------- 1 ...

  5. C#调用R语言输出图片

    参考:http://rdotnet.codeplex.com/documentation   REngine.SetEnvironmentVariables(); REngine engine = R ...

  6. C#获取桌面壁纸图片的路径(Desktop Wallpaper)

    原文 C#获取桌面壁纸图片的路径(Desktop Wallpaper) 利用 Windows 的 API 获取桌面壁纸的实际路径,使用的是 SystemParametersInfo 这个API,此AP ...

  7. gnome3 修改桌面背景图片模式

    修改背景图片,可以在 桌面右键 选择"修改壁纸",选择"background"(背景),这里没有设定背景图片模式. 可以在 “应用程序”->"工 ...

  8. 下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片 将图片的二进制字节字符串在HTML页面以图片形式输出 asp.net 文件 操作方法

    下载远程(第三方服务器)文件.图片,保存到本地(服务器)的方法.保存抓取远程文件.图片   将一台服务器的文件.图片,保存(下载)到另外一台服务器进行保存的方法: 1 #region 图片下载 2 3 ...

  9. 请求一个action,将图片的二进制字节字符串在视图页面以图片形式输出

    有些时候需要将二进制图片字节在发送浏览器以图片形式显示: 下面是一些示例代码: 控制器: /// <summary> /// 将图片的二进制字节字符串在视图页面以图片形式输出 /// &l ...

随机推荐

  1. OpenSUSE42.3 leap 开启ssh登陆

    一.产看ssh是否安装 OpenSUSE:~ # rpm -qa | grep ssh libssh2-1-1.4.3-18.3.x86_64openssh-askpass-1.2.4.1-12.1. ...

  2. JS之字符串和数组

    字符串: 属性: length:可以获取字符串的长度: <script type="text/javascript"> var str = "haha&quo ...

  3. Ace在线编辑器使用requirejs配置

    Ace代码在线编辑器如果需要在requirejs里使用,注意需要使用github上lib/ace目录的文件. 如果使用ajaxorg/ace-builds下面的代码再使用requirejs会报错,不能 ...

  4. file---探测给定文件的类型

    file命令用来探测给定文件的类型.file命令对文件的检查分为文件系统.魔法幻数检查和语言检查3个过程. 语法 file(选项)(参数) 选项 -b:列出辨识结果时,不显示文件名称: -c:详细显示 ...

  5. 【Henu ACM Round#18 C】Ilya and Sticks

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 用cnt[i]记录数字i出现的次数就好. 然后i从1e6逆序到1 如果cnt[i+1]和cnt[i]>0同时成立的话. 那么得 ...

  6. 洛谷 P3040 [USACO12JAN]贝尔分享Bale Share

    P3040 [USACO12JAN]贝尔分享Bale Share 题目描述 Farmer John has just received a new shipment of N (1 <= N & ...

  7. Image与byte[]数组的相互转换

         近期项目有个需求是关于图片操作的,须要将图片保存到数据库中.经过尝试才知道Image类型文件是不能直接存储到数据库中的.保存之前须要我们做一步转换:将Image转换成字节数组类型Byte ...

  8. jQuery08源码 (5140 , 6057) DOM操作 : 添加 删除 获取 包装 DOM筛选

    jQuery.fn.extend({ //$('ul').find('li').css('background','red'); //$('ul').find( $('li') ).css('back ...

  9. 浅析.Net数据操作机制

    举个栗子,获取新闻详情的案例. public ActionResult NewsView(int newsId) { var news = _newsService.GetNewsById(newsI ...

  10. linux的vi或vim文件时,怎样消除刚才查找字符串的高亮?

    有时候,自己在通过/查找字符串时,会出现: 但是呢,当你保存,再次进入还是会出现这么花的高亮显示,很令人苦恼. 解决办法 随便,输入没有的字符串,即可解决. 如下 /sssssssssssssssss ...