通过获取窗口句柄,然后获取窗口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. BZOJ 4385 单调队列

    思路: 对于每一个r 要找最小的符合条件的l最优 这时候就要找在这个区间中 d长度的和的最大值 用单调队列更新就好了 //By SiriusRen #include <cstdio> #i ...

  2. java引用被设置为null的疑惑

    a=null; public class C { protected A webDigester = new A(" first one "); public void test( ...

  3. Alternating Sum

    http://codeforces.com/problemset/problem/963/A 不考虑正负的话,每两项之间之间公比为b/a,考虑正负,则把k段作为循环节,循环节育循环节之间公比为(b/a ...

  4. Codefroces B. T-primes

    http://codeforces.com/problemset/problem/230/B B. T-primes time limit per test 2 seconds memory limi ...

  5. java关于File.separator

    写好代码在模拟环境下测试,完全没问 题:但linux+tomcat下用的时候,却老是报告“No such file or diretory ”的异常,上传不了.后来发现是文件路径的问题.我的模拟测试环 ...

  6. 学习参考《矩阵分析与应用(第二版)张贤达》PDF

    要想深入理解机器学习,或者对人工智能的某个领域有所研究,都必须掌握矩阵及其应用. 学习<矩阵分析与应用第2版>时,会发现总结了大量线性代数的知识,主要是给工科生用的.归纳了不少论文中的解法 ...

  7. Linux下安装Go环境

    登录Linux Mac或Linux的用户可以用命令ssh root@xxx.xxx.xxx.xxx登录主机Window的用户可以使用SecureCRT登录主机虚拟机用户直接打开你的虚拟机 安装Go环境 ...

  8. 剑指offer_面试题6_重建二叉树(分解步骤,逐个击破)

    题目:输入某二叉树的前序遍历和中序遍历的结果.请重建出该二叉树.如果输入的前序遍历和中序遍历的结果中都不含反复的数字. 比如:输入前序遍历 {1,2,4,7,3,5,6,8} 和中序遍历序列 {4,7 ...

  9. 49.大量qq号及qq密码挖掘到结构体并实现精确分配内存以及快速排序

    原数据: 处理后的数据: 完整代码: //思路; //数据清洗(把空格替换成'\0') -> 精确获取每一行(要提前获取source的总长度) -> 获取出每一行再精确分割并把分割后的数据 ...

  10. POJ 3050 枚举+dfs+set判重

    思路: 枚举+搜一下+判个重 ==AC //By SiriusRen #include <set> #include <cstdio> using namespace std; ...