分享
 
 
 

如何获取图片的宽度属性

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

如何获取图片的宽度属性(从数据库读取文件名调用文件夹下的图片)

由于上传图片时没有获取它的宽度,现在要用到,请问有什么好办法可以解决?

图片文件名已大量存在于数据库里,实际图片文件在站点文件夹中。

关注

<img src="image/index.jpg" onload="javascript:if(this.width>500) this.width=500;">

上面的已经可以起到宽高都按比例缩小,不过你也可自己进行设定:

<img src="image/index.jpg" onload="javascript:if(this.width>500){this.height*=500/this.width;this.width=500;}">

楼上正解

up

或者你先显示,用settimeout函数检测图片大?gt;>2还詈没故窃谛词菘獾氖焙蛴胻his.width和this.height判断,大的不能写进去。还一种方法,给用户一个后台直接编辑的窗口,类似新闻发布系统那样

<html>

<head>

<meta http-equiv=Content-Type content=text/html; charset=gb2312>

<meta name=GENERATOR content=Microsoft FrontPage 4.0>

<meta name=ProgId content=FrontPage.Editor.Document>

<title>test</title>

</head>

<body>

<script language=javascript type=text/javascript>

<!--

var imgObj;

function checkImg(theURL,winName){

// 对象是否已创建

if (typeof(imgObj) == object){

// 是否已取得了图像的高度和宽度

if ((imgObj.width != 0) && (imgObj.height != 0))

// 根据取得的图像高度和宽度设置弹出窗口的高度与宽度,并打开该窗口

// 其中的增量 20 和 30 是设置的窗口边框与图片间的间隔量

OpenFullSizeWindow(theURL,winName, ,width= + (imgObj.width+20) + ,height= + (imgObj.height+30));

else

// 因为通过 Image 对象动态装载图片,不可能立即得到图片的宽度和高度,所以每隔100毫秒重复调用检查

setTimeout(checkImg(' + theURL + ',' + winName + '), 100)

}

}

function OpenFullSizeWindow(theURL,winName,features) {

var aNewWin, sBaseCmd;

// 弹出窗口外观参数

sBaseCmd = toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,;

// 调用是否来自 checkImg

if (features == null || features == ){

// 创建图像对象

imgObj = new Image();

// 设置图像源

imgObj.src = theURL;

// 开始获取图像大小

checkImg(theURL, winName)

}

else{

// 打开窗口

aNewWin = window.open(theURL,winName, sBaseCmd + features);

// 聚焦窗口

aNewWin.focus();

}

}

//-->

</script>

<a href=Bt0085.jpg onClick=OpenFullSizeWindow(this.href,'','');return false>图片测试</a>

</body>

</html>

||||||有了Image()对象来获取图象的Width、Height,我就知道该如何去解决怎样实现图象的等比例缩放问题了。于是,我用k=Width/Height表示图象的比例值,当 K>=1时,表示width>heght,只要width不超过200px,则height一定<=200px;相反K<1,只要Height不超过150Px,width一定<=150px(正常情况下width/height=4:3)。所以只要K>=1限定width,K<1限定height就可以了。在测试一的帮助下,我很快有了下面的一段代码(测试二):

测试二

<script language=javascript type=text/javascript>

<!--

var imgObj;

function checkImg(theURL){

var width,height;

var k;

imgObj = new Image();

imgObj.src = theURL;

if (typeof(imgObj) == object){

if ((imgObj.width != 0) && (imgObj.height != 0))

{width=imgObj.width;

height=imgObj.height;

k=width/height;

document.write (k);

if(k>=1){

if (width>=200){

width=200;

height=width/k;

}}

else

{if (height>=200){

height=200;

width=k*height;

}

}

showimg(theURL,width,height);

}

else

setTimeout(checkImg(' + theURL + '), 100)

}

}

function showimg(theURL,x,y)

{

document.write(<imgsrc=+theURL++width=+x++height=+y+border='0'+ +align='left'>);

}

//-->

</script>

<script language=javascript>

checkImg(Bt0085.jpg);

</script>

<html>

<body>

<script>

var url = "http://community.csdn.net/images/CSDN_logo.GIF";

var img = document.createElement("IMG");

img.src = url;

img.style.visibility = "hidden";

img.attachEvent("onreadystatechange",go);

function go(){

alert(url + "" + img.width + " * " + img.height);

}

</script>

</body>

</html>

||||||一帮神人,其实很简单的函数在asp里用loadpicture函数,这个是vbs的函数,你用这个加载就可以了

loadpicture("test.gif")

这个函数具体怎么用啊,调试时提示:

Automation 操作中文件名或类名未找到: 'loadpicture'

up

http://www.moon-soft.com/program/doc/readelite750878.htm

'使用方法:

Picture2 = LoadPicture(FileName)

'判断 Picture2 图片大小,调整后,打印到 Picture1

Dim sHW1 As Single

sHW1 = Picture1.Height / Picture1.Width

'Picture1.AutoRedraw = True

'单位换算:一个象素单位大概相当于 15 个缇

'Picture1.Height = 指定高度(默认:缇)

'Picture1.Width = 指定宽度(默认:缇)

If Picture2.Height / Picture2.Width > sHW1 Then

'如果源图片高与宽比例大于需求比例,取原宽度和高度的中间区域

Picture1.PaintPicture Picture2.Picture, 0, 0, Picture1.Width, Picture1.Height, _

0, (Picture2.Height - Picture2.Width * sHW1) / 2, Picture2.Width, Picture2.Width * sHW1

Else

'否则,取宽度的中间区域和原高度

Picture1.PaintPicture Picture2.Picture, 0, 0, Picture1.Width, Picture1.Height, _

(Picture2.Width - Picture2.Height / sHW1) / 2, 0, Picture2.Height / sHW1, Picture2.Height

End If

Set Picture2.Picture = LoadPicture("") '清空

<script language="vbscript" runat="server">

set picture=loadpicture(server.mappath("01.jpg"))

'属性有width height

</script>

说明

可以由 LoadPicture 识别的图形格式有位图文件 (.bmp)、图标文件 (.ico)、行程编码文件 (.rle)、图元文件 (.wmf)、增强型图元文件 (.emf)、GIF (.gif) 文件和 JPEG (.jpg) 文件。

^^^^^>>^^^^^

>>>>^>>>>>>>>>>^

>>>>^>>>>>>^^^^^

>>>>^>>>>>>^>>^>>^

>>>>^>>>>>>^>>^>>^

>>>>^>>>>>>>>^>>^>>

>>^>>>>>>>>^>>>>>>^

loadpicture("test.gif")

这个函数具体怎么用啊,调试时提示:

Automation 操作中文件名或类名未找到: 'loadpicture'

-------------------------------------

mark

学习……

LoadPicture以后

使用Picture.Width和Picture.Height都要除以26.458以后才能得到正确的象素值

||||||回复人: FEB15(83年的矿泉水) ( ) 信誉:99 2005-04-12 16:19:00 得分: 0

&nbs

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有