以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]递归函数返回不了正确的值? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=100623) |
||||
-- 作者:黄训良 -- 发布时间:2017/5/15 13:48:00 -- [求助]递归函数返回不了正确的值? 递归函数如下: Dim width As Integer = args(0) \'模板宽度 Dim height As Integer = args(1) \'模板高度 Dim ImagePath As String = args(2) \'图片文件 Dim iSource As Image = getimage(ImagePath) Dim ob As Bitmap = new Bitmap(width , height ) Dim g As Graphics = Graphics.FromImage(ob) g.Clear(Color.WhiteSmoke) g.DrawImage(iSource, new Rectangle(0,0, width , height ), 0, 0, iSource.Width, iSource.Height, GraphicsUnit.Pixel) Dim dFile As String = "D:\\test01.JPG" ob.Save(dFile) Application.DoEvents() Dim Info As new FileInfo(dFile) Dim len As Integer = info.Length width = width - 100 height = height - 100 If len < 204800 \'判断图片大小是否大于200KB Return True \'返回不了这个TRUE Else Vars("RecursiveCount") += 1 \'测试记录一下递归次数 Functions.Execute("ImageCompress",width,height ,ImagePath) \'递归 End If iSource.Dispose() ob.Dispose() g.Dispose() 附上例子:
|
||||
-- 作者:有点色 -- 发布时间:2017/5/15 14:16:00 -- 你想实现什么?没看懂你代码的意思
Dim width As Integer = args(0) \'模板宽度 Dim Info As new FileInfo(dFile) iSource.Dispose() |
||||
-- 作者:黄训良 -- 发布时间:2017/5/15 14:44:00 -- 解决了,谢谢! |
||||
-- 作者:ztmdnzc -- 发布时间:2017/6/29 18:50:00 -- 以下是引用黄训良在2017/5/15 14:44:00的发言:
解决了,谢谢! 是用老师的代码解决问题了,还是自己解决了,能否分享? |