我在用Notes开发一个办公自动化系统,里面要开发一个手写签名的程序(基本思路是用手写笔写出签名意见后,把签名范围区域作为图象保存到Notes的文档上并显示出来),在没有测试用的手写笔之前,是把鼠标当作手写笔来使用,因此开发的的时候,我放置了一个tImage控件到窗体上,然后通过控制Timage控件的OnMouseMove事件,在移动的每两个点之间画线,把这样生成的图象作为最终的签名图片,但是这样写出来的字比较生硬。
   程序开发到末期后,买了一个汉王手写笔来测试,发现手写笔写出的字明显生动多了,而且文字有粗有细(我发现手写笔的粗细是通过手写笔的移动的速度来控制的),而且该手写笔有一个手写签名功能,可以直接把手写体签名作为图片插到支持图象嵌入的编辑器(Word,wps等)中。
    现在我必须优化我的程序,使得签名效果更生动,我想了两种方法,但我不敢确定它们中的任何任何一种方法可行,请各位提出建议或新的解决方法。
1,修改我原先开发的程序,把原来直接在onMouseMove事件的画线(原来是画直线)改为画贝茨曲线,并且根据鼠标移动的速度的不同来设置线段的粗细来达到更好的效果,这样做需要更多的处理代码,而且我也不知道这样做能不能达到和手写类似的效果;
2,直接利用手写笔的手写签名功能(我测试用的手写笔是汉王手写笔,它有一个功能是能够直接把手写签名插入到支持图象嵌入的编辑器中),所以可以考虑自己另外做一个支持图象嵌入的编辑器(实际上只要一个RTF控件就行),把手写笔的签名图片放到此编辑器上,然后把该编辑上的图片作为手写签名的图片,但是我测试用的手写笔是汉王手写笔,汉王笔是有这个功能,但是其它手写笔也有这个功能吗?我不敢确定!所以使用这种方法对于汉王的手写笔
自然没问题,但是对其他手写笔却未必能行,而单位往往不止使用一种手写笔。
   我已经想不到更好的方法了,请大家帮忙,另外我可以把我现在开发的用鼠标
代替手写笔的签名功能的源代码发给大家作个参考,需要的请留下Email.

解决方案 »

  1.   

    我已经搞定该问题了,不过我用的是汉王手写笔(不知道对其他手写笔通不通用)。
    实现原理是:
      手写笔在签名的时候其实是把手写笔书写的区域保存到剪贴板中,所以我们可以通过监视剪贴板的变化来获取手写签名的图形,然后我们就可以随意的把图形放到我们要的地方去了(我是这么理解的),zzd(我给了你黑色的眼睛,让你用它来寻找光明)  说的方法其实是最初我想使用的方法,但是我不敢确定这样能行,所以最终也没有这样做
      

  2.   

    安装了手写版后,会带上一个WinTab32.dll,通过它可以获得压力值~~~www.pointing.com
    去上面的网站看看~~~