以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  excel 导出图片怎么变形  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70846)

--  作者:kao_go
--  发布时间:2015/6/30 10:32:00
--  excel 导出图片怎么变形
用以下代码导出图片,变形,能不能设置保持图片比例呢?
    Sheet(r +1, 7).Value = New XLS.Picture(GetImage("E:\\我的文档\\web\\权限系统\\img\\imgsmall\\" & lsb0.datarows(r)("spdm") & "-" & lsb0.datarows(r)("gg1dm") & ".jpg"),0,0,120,120)  

--  作者:大红袍
--  发布时间:2015/6/30 10:32:00
--  

你指定了宽高,肯定变形

 

任意一个设置成-1


--  作者:kao_go
--  发布时间:2015/6/30 11:02:00
--  
我设置了高度为-1,会生效保持宽高比,但是设置宽度为-1的时候就不生效??
--  作者:kao_go
--  发布时间:2015/6/30 11:12:00
--  
只能设置高度为-1吗??
--  作者:大红袍
--  发布时间:2015/6/30 11:16:00
--  

 或者,可以用代码变通一下

 

Dim book As New XLS.Book("d:\\test.xls")
Dim sheet As XLS.Sheet = book.Sheets(0)
Dim img As image = GetImage("d:\\test.jpg")
Sheet(1, 7).Value = New XLS.Picture(img,0,0, cint(120*(img.width/img.Height)),120)
book.Save("d:\\test.xls")


--  作者:kao_go
--  发布时间:2015/6/30 11:40:00
--  
img.width/img.Height  一直提示  未将对象引用设置到对象的实例。
--  作者:kao_go
--  发布时间:2015/6/30 11:50:00
--  
可以了,非常感谢