小妹求教各位高手,如何将数据库中的图片(tif格式的)ie中显示出来(在线!)

parhelion 2003-04-04 04:56:55
我的是oracle库,那些存的图片是tif格式的,主要是扫描后的图,我没有权利更改图片的保存格式(也就是我不能动数据库的数据),但是我要在asp的方式下用ie显示出来。求教各位了,如果有插件或代码都行,问题解决后可以双倍送分,多谢各位了再次。
...全文
175 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
parhelion 2003-04-10
  • 打赏
  • 举报
回复
虽然我的问题还是没有解决,我还是学到了不少东西,谢谢诸位了,我打算就此结帖,不过我还会不断的向各位请教,谢谢大家,请大家以后多多关照了,我在这先谢谢了。
parhelion 2003-04-09
  • 打赏
  • 举报
回复
啊,谢谢。
也就是我不能从数据库中直接提取图片,必须从数据库中提出数据转成放图片的临时文件然后才能使用是吗?
quiet 2003-04-09
  • 打赏
  • 举报
回复
如果别人的控件要求的是地址,那恐怕是得这样做了吧。
parhelion 2003-04-08
  • 打赏
  • 举报
回复
是啊,对对对,我太菜说不清楚,不好意思了,还好你知道
denghan 2003-04-08
  • 打赏
  • 举报
回复
数据绑定?不太清楚
我想你说的是让这个控件按参数显示指定的图片吧
parhelion 2003-04-08
  • 打赏
  • 举报
回复
to千年精灵:
你说的我也想过,我不就是需要重新再做一张表用非asp的语言降图片转换成jpg 或gif的格式式。还有据我了解图片的格式转换的算法似乎是比较复杂的,我比较菜没有信心胜任啊。
to denghan
我从数据库中提图片,我需不需要再次单独做数据绑定啊?
quiet 2003-04-08
  • 打赏
  • 举报
回复
查查你下载这个控件的说明吧,别个<param name="FileName" value="1.tif">这里的value估计是地址,而你reimage("photo")是什么呢?呵呵。如果真的是地址,那么你自己给一个具体的地址给这个参数看能不能显示图象?
不知道为什么我以前用<param>时候从来就没成功过,我用的vbs
<object name="xxx".....></object>
<script language="vbscirpt>
sub myload()
xxx.filename.vaule=<%=你tif图象的地址%>
end sub
</script>
然后把这个子程序放到<body onload="myload()">
try it
parhelion 2003-04-08
  • 打赏
  • 举报
回复
谢谢你,我的就是 asp的程序了,其中是按参数将数据从数据库中提出的是这样的
这句<param name="FileName" value="1.tif">
改成:<param name="FileName" value="<%=reimage("photo")%>">
可是出不来 啊.

对了顺便占你一点便宜(我会多多给分的).不好意思,我想问:
比如一个网页有许多table 而我只想打印其中的一个table,或者是几个,如果可以设置页面大小最好,如果不行的话,只要是打印就成了,小妹万分感激,谢谢,谢谢。

denghan 2003-04-08
  • 打赏
  • 举报
回复
不好意思没仔细看你的代码.其实你上面的的那些<object....></object>就可以进行你说的“数据绑定”了
这句:<param name="FileName" value="1.tif">
把value改为你要的文件名就行了。如果你想做成动态的,可以考虑用ASP做
denghan 2003-04-08
  • 打赏
  • 举报
回复
你的那个控件是怎么工作的呢?我是说比如当让它显示1.tif文件时,你怎样将参数传给它?
parhelion 2003-04-07
  • 打赏
  • 举报
回复
啊?
那是不是每台机器都要注册啊?起不是与c/s装“客户端”相似啊,我的理解不知对不对?
parhelion 2003-04-07
  • 打赏
  • 举报
回复
<object classid="clsid:E7EDC300-766F-11CF-A64F-0020AF37425D" width="600" height="600" style="Z-INDEX: 101; LEFT: 3px; POSITION: absolute; TOP: 1px; width: 551px; height: 599px;" viewastext>
<param name="_Version" value="196608">
<param name="_ExtentX" value="2646">
<param name="_ExtentY" value="1323">
<param name="_StockProps" value="237">
<param name="ForeColor" value="0">
<param name="BackColor" value="13160660">
<param name="BorderStyle" value="1">
<param name="Enabled" value="1">
<param name="Appearance" value="1">
<param name="AutoSize" value="0">
<param name="DCTMethod" value="1">
<param name="Dither" value="0">
<param name="FancyUpsampling" value="0">
<param name="FileName" value="1.tif">
<param name="JPEGDither" value="1">
<param name="PrintX" value="0">
<param name="PrintY" value="0">
<param name="Thumbnail" value="0">
<param name="Zoom" value="1">
<param name="PrintZoom" value="1">
<param name="TwoPassQuantize" value="0">
<param name="JPGSmoothing" value="0">
<param name="JPGQuality" value="0">
<param name="JPGOptimize" value="1">
<param name="DrawMode" value="13">
<param name="DrawWidth" value="1">
<param name="DrawStyle" value="0">
<param name="FillColor" value="0">
<param name="FillStyle" value="1">
<param name="ScaleLeft" value="0">
<param name="ScaleTop" value="0">
<param name="ScaleHeight" value="0">
<param name="ScaleWidth" value="0">
<param name="ScaleMode" value="1">
<param name="ImageSource" value="1">
<param name="DrawTo" value="0">
<param name="AutoRefresh" value="1">
</object>
这是我的代码,但是不好意思我不是很明白http://expert.csdn.net/Expert/topic/1414/1414602.xml?temp=.650387)
的意思。
iStringTheory 2003-04-07
  • 打赏
  • 举报
回复
也可以做个组件,在服务器上将tif格式转换为jpg或者gif等浏览器支持的格式,这样就免去在客户端注册ocx之苦了
denghan 2003-04-07
  • 打赏
  • 举报
回复
你要把那个ocx文件数字签名(数字签名参见:http://expert.csdn.net/Expert/topic/1414/1414602.xml?temp=.650387)


,然后在图片显示页这样说明
<OBJECT ID="imgedit"
CLASSID="CLSID:B5461185-5F1B-11D3-AFB6-D88009C10000"
CODEBASE="imgedit.ocx#version=2,0,3,0">
<object>
这样,客户机在打开这页时,首次运行会自动下载并注册那个OCX.
parhelion 2003-04-07
  • 打赏
  • 举报
回复
我下了一个了,也注册了,但是就向你说的那样了,看来是唯一的办法了,不过还是要谢谢你。
郁闷啊!那些存数据的大虾起码也问我一声浏览器的事啊,哎……
谁叫做数据库的是公司的头呢!我还是歇菜吧。
quiet 2003-04-07
  • 打赏
  • 举报
回复
这个你得做一个ocx控件了,确实在每台机器上都要注册,你在网上再找找看有没其他的办法。
quiet 2003-04-04
  • 打赏
  • 举报
回复
刚刚同事说vb中的imgedit.ocx可以显示,我测试了确实可以,那你就只有自己做个控件来显示咯^_*
parhelion 2003-04-04
  • 打赏
  • 举报
回复
多谢
你的这个代码我也有,但是关键是ie不支持tif 的格式啊.
quiet 2003-04-04
  • 打赏
  • 举报
回复
< %
set connGraph=server.CreateObject("ADODB.connection")
connGraph.ConnectionString="driver={Microsoft Access Driver (*.mdb)};DBQ=" &
server.MapPath("images.mdb") & ";uid=;PWD=;"
connGraph.Open
set rec=server.createobject("ADODB.recordset")
strsql="select img from images where id=" & trim(request("id"))
rec.open strsql,connGraph,1,1
Response.ContentType = "image/*"
Response.BinaryWrite rec("img").getChunk(7500000)
rec.close
set rec=nothing
set connGraph=nothing
% >
没有用过oracle,你自己按照这个方法改吧
wangyiyun0119 2003-04-04
  • 打赏
  • 举报
回复
showimg.asp文件:
<%
set connGraph=server.CreateObject("ADODB.connection")
connGraph.ConnectionString="provider=sqloledb.1;dsn=yiyun;uid=sa"
connGraph.Open
set rec=server.createobject("ADODB.recordset")
strsql="select img from images where id=" & trim(request("id"))
rec.open strsql,connGraph,1,1
Response.ContentType = "image/*"
Response.BinaryWrite rec("img").getChunk(7500000)
rec.close
%>
在你要显示图片的网页上任何地方加入:

<img src=showimg.asp?id=xxx> '这里的id指的是你数据库中图片的编号,

上面的例子我是使用SQL Server做数据库的,表名为Images,表里的字段名分别是Id,img
请你自己改变上面数据路连接字符串中的DNS名称,

28,404

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧