51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 6056|回复: 23
打印 上一主题 下一主题

[求助] vbscript实现在图片上增加文字

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-7-6 18:11:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想在QTP里用vbscript实现:
读取已有的图片,并在图片的特定位置上增加一段文字说明。最好有代码辅助说明。呵呵,谢谢啦~~~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    难过
    2015-9-21 13:50
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    2#
    发表于 2009-7-6 22:14:36 | 只看该作者
    图片上增加文字,有这功能吗?

    关注下....
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2015-12-2 10:12
  • 签到天数: 5 天

    连续签到: 1 天

    [LV.2]测试排长

    3#
    发表于 2009-7-7 10:41:54 | 只看该作者
    很好奇!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2009-7-7 10:56:55 | 只看该作者
    光靠VBS 好像不行
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2009-7-7 21:10:39 | 只看该作者

    回复 1# 的帖子

    具体代码如下:
    1. Function JPG_DrawEllipseAndString(filename,str,leftlen,toplen,rightlen,bottomlen)
    2. '******************************
    3. ' Description:   Add note to a picture at specific area
    4. ' Precondition:  Install tool aspjpeg
    5. ' Input:         filename---Picture path
    6. '                str--------String to write
    7. '                leftlen----left lenth to original point
    8. '                toplen-----top lenth to original point
    9. '                rightlen---right lenth to original point
    10. '                bottomlen-bottom lenth to original point
    11. ' Output:        None
    12. ' Example:       JPG_DrawEllipseAndString("C:\org.jpg","LantianWei",100,200,500,400)
    13. ' Tester:        LantianWei
    14. ' Date:          Dec 23, 2007
    15. '******************************
    16.         Dim Jpeg,tmpleft,tmptop,tmpright,tmpbottom
    17.         Set Jpeg=CreateObject("Persits.Jpeg")
    18.         Jpeg.Open filename
    19.         Jpeg.Canvas.Pen.Color=vbRed  
    20.         Jpeg.Canvas.Pen.Width=2
    21.         Jpeg.Canvas.Brush.Solid=False '是否加粗
    22.         Jpeg.Canvas.Ellipse leftlen,toplen,rightlen,bottomlen '画椭圆
    23.        
    24.         If leftlen>Jpeg.OriginalWidth/2 Then
    25.                 tmpleft=leftlen
    26.                 tmptop=toplen+(bottomlen-toplen)/2
    27.                 If toplen+(bottomlen-toplen)/2>Jpeg.OriginalHeight/2 Then
    28.                         tmpright=leftlen-100
    29.                         tmpbottom=toplen+(bottomlen-toplen)/2-100
    30.                 Else
    31.                         tmpright=leftlen-100
    32.                         tmpbottom=toplen+(bottomlen-toplen)/2+100
    33.                 End If
    34.         Else
    35.                 tmpleft=rightlen
    36.                 tmptop=toplen+(bottomlen-toplen)/2
    37.                 If toplen+(bottomlen-toplen)/2>Jpeg.OriginalHeight/2 Then
    38.                         tmpright=rightlen+100
    39.                         tmpbottom=toplen+(bottomlen-toplen)/2-100
    40.                 Else
    41.                         tmpright=rightlen+100
    42.                         tmpbottom=toplen+(bottomlen-toplen)/2+100
    43.                 End If
    44.         End If
    45.   
    46.         Jpeg.Canvas.DrawLine tmpleft,tmptop,tmpright,tmpbottom
    47.         Jpeg.Canvas.Font.Color=vbRed   '红颜色
    48.         Jpeg.Canvas.Font.Bold=True '是否加粗
    49.         Jpeg.Canvas.Print tmpright,tmpbottom,str
    50.         Jpeg.Canvas.DrawBar 0,0,Jpeg.OriginalWidth,Jpeg.OriginalHeight
    51.         Jpeg.Save filename
    52.         Jpeg.Close
    53.         Set Jpeg=Nothing
    54. End Function
    复制代码
    在此应该感谢一位朋友,kernzhang,原创是他,曾经他做了个框架方面的视频,而上面有一小部分代码在视频上出现了,再感谢另外一位朋友,是他很有心,硬是把那小段代码从视频上抄下来的。而我做的只是进行了修补,完善,呵呵。。。以上代码还是有不足的地方,有心的朋友可以进行完善,然后再分享给大家。

    [ 本帖最后由 lantianwei 于 2009-7-20 12:45 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2009-7-8 09:31:55 | 只看该作者

    回复 5# 的帖子

    谢谢分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2015-9-21 13:50
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    7#
    发表于 2009-7-9 00:11:19 | 只看该作者

    回复 5# 的帖子

    我在调试过程中:无法创建Persits.Jpeg对象。。。

    运行脚本需要什么条件..(ASPJPEG组件?)

    [ 本帖最后由 fei.ge 于 2009-7-9 00:15 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2009-7-9 09:28:13 | 只看该作者

    回复 5# 的帖子

    此人不是一般的强,属于禽兽级别的。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2009-7-9 09:38:24 | 只看该作者

    回复 7# 的帖子

    ' Precondition:  Install tool aspjpeg
    函数有前置条件的,需要先安装第三方软件ASPJPEG
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2009-7-9 09:39:44 | 只看该作者

    回复 8# 的帖子

    要形容,词也用好听点的阿!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-2-28 09:48
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    11#
    发表于 2009-7-9 10:07:13 | 只看该作者
    呵呵,这个真的很强大!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2015-9-21 13:50
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    12#
    发表于 2009-7-9 11:08:52 | 只看该作者

    回复 9# 的帖子

    装了aspjpeg组件试了下,很强大……
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    13#
    发表于 2009-7-9 11:40:06 | 只看该作者
    Function JPG_DrawEllipseAndString(filename,str,leftlen,toplen,rightlen,bottomlen)
    End Function

    执行语句:
    JPG_DrawEllipseAndString("C:\org.jpg","LantianWei",100,200,500,400)
    结果出错:
                  Run Error
                            The test run cannot continue due to a syntax error.
                             调用过程(sub)时不能使用括号
                  details<<
                    Line (56): "JPG_DrawEllipseAndString      ("C:\org.jpg","LantianWei",100,200,500,400)".

    执行语句:
    JPG_DrawEllipseAndString "C:\org.jpg","LantianWei",100,200,500,400
    去掉括号可运行

    调用函数什么时间可以加括号,什么时间不加括号? 跟参数有关吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2009-7-9 11:49:28 | 只看该作者
    1. CALL JPG_DrawEllipseAndString("C:\org.jpg","LantianWei",100,200,500,400)

    2.JPG_DrawEllipseAndString "C:\org.jpg","LantianWei",100,200,500,400
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    15#
    发表于 2009-7-9 11:52:11 | 只看该作者
    ASPJPEG 简介
    http://baike.baidu.com/view/514985.htm

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    16#
    发表于 2009-7-9 11:53:48 | 只看该作者
    原帖由 lantianwei 于 2009-7-9 11:49 发表
    1. CALL JPG_DrawEllipseAndString("C:\org.jpg","LantianWei",100,200,500,400)

    2.JPG_DrawEllipseAndString "C:\org.jpg","LantianWei",100,200,500,400


    但是:
       function 定义的,而非sub
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2009-7-15 14:36:15 | 只看该作者
    不错,调试可以通过。提个新需求,不知道可不可以针对JPEG图片是的一个特定的对象写文字呢,比如说对JEPG上的一个图片作说明。呵呵
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2009-7-15 14:44:06 | 只看该作者

    回复 17# 的帖子

    在调用的时候 动态获得你要标识的对象的坐标就可以了 然后传进该函数
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2009-7-15 17:06:40 | 只看该作者
    关注!调试一下!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2009-7-16 14:32:49 | 只看该作者
    学习
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-25 03:22 , Processed in 0.098363 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表