屏幕取色源码
❶ 哪位大神有96屏幕取色器 V1.0 绿色版软件百度云资源
《96屏幕取色器 V1.0》网络网盘最新全集下载
链接: https://pan..com/s/1NdxwK2yHqrXqxaQ1Ytzr_A
介绍:96屏幕取色器是一款小巧实用的电脑屏幕取色器方便用户提取颜色,这款软件使用简单,它可以帮助用户一键取色,支持从电脑屏幕上的任何一个地方进行取色,非常简单方便,一键轻松取色,为你大大减少操作步骤,节省操作时间。
❷ 按键精灵安卓手机版取色代码
首先需要使用安卓电脑助手取色
颜色判断命令是一样的
点击命令使用Tap
随机数命令一样
❸ 哪位大神有屏幕拾色器(胡建华屏幕取色拾色器) V1.0 绿色版软件百度云资源
链接:
提取码:ftpz
软件名称:屏幕拾色器(胡建华屏幕取色拾色器)V1.0绿色版
语言:简体中文
大小:339KB
类别:系统工具
介绍:屏幕拾色器可以很方便的来自由的去调节并进行取色哦,屏幕取色拾色器小巧使用,也是没有任何的插入以及广告的,如果你是从事美工或者设计相关的行业,相信你也是一定会喜欢的哦,有需要的小伙伴就别犹豫了来下载吧!
❹ 跪求ColorFOff(屏幕取色工具) V1.1 绿色版软件百度云资源
链接:
提取码:fpa5
软件名称:ColorFOff(屏幕取色工具)V1.1绿色版
语言:简体中文
大小:9.72KB
类别:系统工具
介绍:ColorFOff是一款非常好用的屏幕取色工具,可以快速获取屏幕上任一点的颜色值,且操作简单,容易上手,推荐大家使用,有需要这款屏幕取色工具的小伙伴欢迎前来下载。
❺ VB用GetPixel屏幕取色的几个问题
我不是太明确你第一个问题的意思。我的理解是你要对屏幕的某个目标进行取色。问题是如何确认这个目标的位置。如果目标是固定的坐标或者在固定的屏幕比例中出现,那么直接针对的计算坐标来取色即可。但我想你希望的是对一个不固定的坐标取色。那么多半是窗口坐标,这样的话可以获取窗口的DC来取色。总的来说,你必须确立一个参照坐标。
2,出错是因为并不是所有DC都支持GetPixel 和 SetPixel。例如win7的很多窗体,java程序的窗体。不过DirectX的窗体好像是可以的。因为这个原因,考虑到兼容性需要,我往往是使用BitBlt来对一个像素点截屏再进行取色。一般来说BitBlt 不会让效率降低太多。可能几十倍而已,几千几百个点的话可以忽略。如果你是对大范围取色,BitBlt会比GetPixel更有效率。
3.读取jpg需要使用一些解码包会比较好,因为jpg的结构相当复杂,自己写代码会非常费事,事实上,我对JPG的结构还挺熟悉,但从来不敢想象自己写一个关于他的解压包。如果你是懒得找包的话,给你一个不太好的但可以处理的办法:使用JNI(Java native interface),他可以用作java 和c之间的界面, 由jdk自带。你可以在C里调度Java。java的 ImageIO.read(File file);方程可以直接读取bmp gif jpg 和 png 文件。读出来的BufferedImage 可以直接获取像素资料,但是效率不高,你可以从BufferedImage对象中获取 WritableRaster,然后获取DataBuffer 最后是直接的 byte 或者 int 数组数据。但是,前提是你要会JNI,同时JNI在C中调度Java的代码也是非常糟糕的,代码效率还可以,但代码会极度难看。如果真的决定使用JNI,那我建议你先用Java写一个 byte[] readJPG(String path);的方程然后再C调度这个方程获取 byte 数组,而不是直接从C调用ImageIO.read(),这样会省事非常多
但还是建议找C的解码包。给代码是不可能的,我原意话10分钟来回答问题,但不太原意话1小时来写代码。而且自己寻找答案会获得和学习更多。
最后如果你想要做的是图像识别,可以说jpg图片不是很好的选择,因为那是一种会丢失数据的文件格式,你用点对点的精确识别方法肯定(99.9999%)不能识别出图片。用模糊识别是要有很好的技术知识同时效率也会降低。建议使用BMP作为识别图片。BMP的解码包和源码网上一大堆。
❻ 取色器制作
在VC6.0中新建 工程 选择Win32 application,一直下一步确定。
然后再新建C++ Source file
内容:
#include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd)
{
static TCHAR szAppName[]="RGB";
WNDCLASS cwnd;
cwnd.cbClsExtra=0;
cwnd.cbWndExtra=0;
cwnd.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
cwnd.hCursor=LoadCursor(NULL,IDC_ARROW);
cwnd.hIcon=LoadIcon(hInstance,szAppName);
cwnd.hInstance=hInstance;
cwnd.lpfnWndProc=WndProc;
cwnd.lpszClassName=szAppName;
cwnd.lpszMenuName=NULL;
cwnd.style=CS_HREDRAW | CS_VREDRAW;
if(! RegisterClass(&cwnd))
{
MessageBox(NULL,"Fail to Register the Window class!",szAppName,MB_ICONERROR);
return 0;
}
HWND hwnd;
hwnd=CreateWindow(szAppName,szAppName,
WS_OVERLAPPED | WS_MINIMIZEBOX | WS_EX_TOPMOST | WS_SYSMENU,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
NULL,NULL,hInstance,NULL);
ShowWindow(hwnd,nShowCmd);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
static RECT rect,color_rect,point_rect,rgb_rect,d_rect;
const int height=100,width=300;
static POINT mspt;
static HWND handle;
static COLORREF color;
static bool flag;
static HBRUSH hBrush;
char szbuf[100];
switch(msg)
{
case WM_CREATE:
SetTimer(hwnd,0,100,NULL);
MoveWindow(hwnd,(GetSystemMetrics(SM_CXSCREEN)-width)/2,(GetSystemMetrics(SM_CYSCREEN)-height)/2,width,height,true);
return 0;
case WM_SIZE:
GetClientRect(hwnd,&rect);
color_rect.left=rect.left+2,color_rect.top=rect.top=2,color_rect.bottom=rect.bottom-2,color_rect.right=color_rect.left+100;
point_rect.left=110,point_rect.top=rect.top,point_rect.right=rect.right,point_rect.bottom=rect.bottom/2;
rgb_rect.left=110,rgb_rect.top=point_rect.bottom,rgb_rect.right=rect.right,rgb_rect.bottom=rect.bottom;
return 0;
case WM_TIMER:
hdc=GetDC(hwnd);
GetCursorPos(&mspt);
handle=WindowFromPoint(mspt);
GetWindowRect(handle,&d_rect);
color=GetPixel(GetWindowDC(handle),mspt.x-d_rect.left,mspt.y-d_rect.top);
DrawText(hdc,szbuf,wsprintf(szbuf,"X:%04d Y:%04d ",mspt.x,mspt.y),&point_rect,DT_SINGLELINE | DT_RIGHT | DT_VCENTER);
DrawText(hdc,szbuf,wsprintf(szbuf,"R:%03d G:%03d B:%03d ",GetRValue(color),GetGValue(color),GetBValue(color)),&rgb_rect,DT_SINGLELINE | DT_RIGHT | DT_VCENTER);
hBrush=CreateSolidBrush(color);
SelectObject(hdc,hBrush);
Rectangle(hdc,color_rect.left,color_rect.top,color_rect.right,color_rect.bottom);
DeleteObject(hBrush);
ReleaseDC(hwnd,hdc);
return 0;
case WM_DESTROY:
KillTimer(hwnd,0);
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd,msg,wParam,lParam);
}
如果还有不明白的留言给我。