社区
C#
帖子详情
怎么让自行绘制的文本支持屏幕取词?
3tzjq
2009-06-26 10:30:52
此问题困扰我很久了!
我想让Graphics.DrawString()或 ControlPaint.DrawStringDisabled()绘制的文本支持"金山词霸"等软件的屏幕取词功能,但不知如何下手.
比如下面的"已.未审核"和"审核人:..."是自行绘制的,但无法支持屏幕取词:
...全文
87
19
打赏
收藏
怎么让自行绘制的文本支持屏幕取词?
此问题困扰我很久了! 我想让Graphics.DrawString()或 ControlPaint.DrawStringDisabled()绘制的文本支持"金山词霸"等软件的屏幕取词功能,但不知如何下手. 比如下面的"已.未审核"和"审核人:..."是自行绘制的,但无法支持屏幕取词:
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liyoubaidu
2009-08-09
打赏
举报
回复
[Quote=引用 10 楼 cpio 的回复:]
不知道是不是因为用GDI+绘的,用GDI看看看吧
至少我用GDI在VC里面绘出来的是可以
金山司霸的原理就是截获GDI一些输出函数,比如TextOut,DrawText,把里面的参数取出来
[/Quote]
顶
雅虎乐译 我也来试试
北京的雾霾天
2009-06-26
打赏
举报
回复
我说这因为 ControlPaint.DrawStringDisabled就是使用的Graphics.DrawString来实现的。
北京的雾霾天
2009-06-26
打赏
举报
回复
首先说,这不应该是你的事情,应该是取词软件要实现的。
我使用的“雅虎乐译”就可以取到使用Graphics.DrawString绘制的文字。
3tzjq
2009-06-26
打赏
举报
回复
[Quote=引用 10 楼 cpio 的回复:]
不知道是不是因为用GDI+绘的,用GDI看看看吧
至少我用GDI在VC里面绘出来的是可以
金山司霸的原理就是截获GDI一些输出函数,比如TextOut,DrawText,把里面的参数取出来
[/Quote]
我想也是,它提取的可能只是某控件的一些文本属性(Text,Caption...),是不是该为Text属性加点什么Attribute?
cpio
2009-06-26
打赏
举报
回复
[DllImport("gdi32.dll", EntryPoint = "TextOut")]
public static extern int TextOut(
IntPtr hdc,
int x,
int y,
string lpString,
int nCount
);
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawString("gdi+ test", this.Font, Brushes.White, 100, 100);
IntPtr hdc = e.Graphics.GetHdc();
TextOut(hdc, 100, 120, "gdi test", 8);
e.Graphics.ReleaseHdc(hdc);
}
用TextOut输出的是可以的,我试过
看来就是GDI+不可以
不过,用GDI的话,可能你处理这些效果会比较麻烦
3tzjq
2009-06-26
打赏
举报
回复
[Quote=引用 7 楼 Deathsign 的回复:]
哦哦哦
WINFORM啊
你用个LABEL装那几个字,自己写个控件, 控制下LABEL位置嘛 看起一样就行啦
就OK了啊
[/Quote]
我不想继承Label.
目前 AuditStatusButton继承自CrystalButtonBase, CrystalButtonBase继承自Control
Deathsign
2009-06-26
打赏
举报
回复
[Quote=引用 10 楼 cpio 的回复:]
不知道是不是因为用GDI+绘的,用GDI看看看吧
至少我用GDI在VC里面绘出来的是可以
金山司霸的原理就是截获GDI一些输出函数,比如TextOut,DrawText,把里面的参数取出来
[/Quote]
受教!
cpio
2009-06-26
打赏
举报
回复
不知道是不是因为用GDI+绘的,用GDI看看看吧
至少我用GDI在VC里面绘出来的是可以
金山司霸的原理就是截获GDI一些输出函数,比如TextOut,DrawText,把里面的参数取出来
yaazz
2009-06-26
打赏
举报
回复
屏幕取词取的是文本,一般不能分析图像吧
lidss1234
2009-06-26
打赏
举报
回复
用DIV,图做背景图片.然用CSS控制文字.
Deathsign
2009-06-26
打赏
举报
回复
哦哦哦
WINFORM啊
你用个LABEL装那几个字,自己写个控件, 控制下LABEL位置嘛 看起一样就行啦
就OK了啊
满衣兄
2009-06-26
打赏
举报
回复
额,我也想到web了,晕了
满衣兄
2009-06-26
打赏
举报
回复
金山词霸没有分析图片的能力,只能在图片上考虑了.
可以放个div到图片的文字部分.
3tzjq
2009-06-26
打赏
举报
回复
[Quote=引用 1 楼 Deathsign 的回复:]
你把图片里面挖空··用文本填充 再用CSS控制样式就行了啊
[/Quote]
指WinForm控件,非图片.
Deathsign
2009-06-26
打赏
举报
回复
哦 理解错了。。。
你写个DIV 把DIV 搞透明把字放里面试试????
jieon
2009-06-26
打赏
举报
回复
up...
Deathsign
2009-06-26
打赏
举报
回复
你把图片里面挖空··用文本填充 再用CSS控制样式就行了啊
北京的雾霾天
2009-06-26
打赏
举报
回复
应该不是的,C#里的控件,比如文本框,按钮,他们实际上还是标准Windows控件继承下来的,并没有在C#里全部得到重写,他们的绘制最终应该是通过TextOut来完成的。
3tzjq
2009-06-26
打赏
举报
回复
[Quote=引用 16 楼 hbxtlhx 的回复:]
我说这因为 ControlPaint.DrawStringDisabled就是使用的Graphics.DrawString来实现的。
[/Quote]
这我知道,但为什么像Label,Button...的自带控件就支持取词呢? 难道它们的Text 不由GDI+绘制?
java源码包---java 源码 大量 实例
Java
绘制
图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和
绘制
火焰的效果的Image对象、Applet和
绘制
火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、
绘制
火焰效果的X坐标...
java源码包2
Java
绘制
图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和
绘制
火焰的效果的Image对象、Applet和
绘制
火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、
绘制
火焰效果的X坐标...
java源码包3
Java
绘制
图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和
绘制
火焰的效果的Image对象、Applet和
绘制
火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、
绘制
火焰效果的X坐标...
java源码包4
Java
绘制
图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和
绘制
火焰的效果的Image对象、Applet和
绘制
火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、
绘制
火焰效果的X坐标...
Teechart图表应用技术详解—第三章之在图表上
自行
绘制
在图表上
自行
绘制
如果想增加与图表轴相关联的
文本
框或其他形状, TShapeSerie序列是最好的选择,如果这个满足不了用户的要求,就可以在图表上
绘制
各种形状。TeeChart提供了通过坐标轴或
屏幕
像素访问图表区域的能力...
C#
111,112
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章