Foxtable(狐表)用户栏目专家坐堂 → 关于Excel报表中图片列的大小


  共有3035人关注过本帖树形打印复制链接

主题:关于Excel报表中图片列的大小

帅哥哟,离线,有人找我吗?
lake163
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
关于Excel报表中图片列的大小  发帖心情 Post By:2015/10/8 14:52:00 [只看该作者]

Excel 报表中图片列引用方法为:

[&列名,X,Y,Width,Height]

其中Width,Height 的单位均为像素。

出现一个问题:在不同显示分辨率的电脑上,打印出的照片大小是不一致的。在一台电脑上调试好后,在低分辨率电脑上就会扩大,在高分辨率电脑上则缩小。

请问如何解决?

 


此主题相关图片如下:qq截图20151006103857.png
按此在新窗口浏览图片

[此贴子已经被作者于2015/10/8 14:52:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/8 14:57:00 [只看该作者]

 这个控制不了的,高分辨率看起来自然小,设计尺寸根据1024*768设计宽高即可。


 回到顶部
帅哥哟,离线,有人找我吗?
lake163
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/8 15:14:00 [只看该作者]

不单纯是显示的问题,关键是打印出来效果也不一样啊!

[此贴子已经被作者于2015/10/8 15:14:49编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/8 15:15:00 [只看该作者]

那你就不要固定大小直接用图片本来的大小。


 回到顶部
帅哥哟,离线,有人找我吗?
lake163
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/8 15:46:00 [只看该作者]

图片本来的大小就不一致啊?


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/8 15:47:00 [只看该作者]

那没办法

 回到顶部
帅哥哟,离线,有人找我吗?
lake163
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/8 16:11:00 [只看该作者]

不管怎样,还是要谢谢的。

 回到顶部
帅哥哟,离线,有人找我吗?
lake163
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/10 13:38:00 [只看该作者]

受帮助中一些内容的启发,对于EXCEL报表中,图片的大小与分辨率的的关系,有这样一个思路。
1、获取当前分辨率:dim fbl as Integer = SysInfo.ScreenWidth
2、计算当前分辨率与设计时分辨率的比例关系 : dim bl = fbl/1366      '设计时分辨率为1366
3、根据比例,替换图片引用表达式中的宽和高。

以上方法,代码没有问题,图片能正常显示,但仍然不能获得满意的大小。
图片的大小与分辨率好象没有线性关系,假如1366分辨下宽度为145,那么 1900(22寸显示器)、1600(13.3寸显示器)分辨下合理的值均为170。
请问是什么原因?  不会与显示器的DPI有关吗?


以下逐个定义的方式虽然能够应付,但比较麻烦:(1280以下分辨率,合适的数值还未测试)
dim kd,gd   as Integer
If SysInfo.ScreenWidth = 1900
    kd = 170
    gd = 227
Else If SysInfo.ScreenWidth = 1600
    kd = 170
    gd = 227
Else If SysInfo.ScreenWidth = 1366
    kd = 145
    gd = 181
Else If SysInfo.ScreenWidth = 1280
    kd = 130
    gd = 173
Else If SysInfo.ScreenWidth > 1024
    kd = 110
    gd = 147
End If

[此贴子已经被作者于2015/10/10 13:40:52编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/11 11:22:00 [只看该作者]

显示器pdi要一致

 回到顶部
帅哥哟,离线,有人找我吗?
lake163
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/11 12:14:00 [只看该作者]

很奇怪报表是用来打印的,其中图片大小为啥要用显示像素来计算?

 回到顶部
总数 11 1 2 下一页