webForumDet fria alternativet

Eviga frågan: AspImage

ASP

11 svar · 576 visningar · startad av asp

Medlem sedan aug. 2002733 inlägg
Frågan#1

Hej.

Har sökt och frågat men aldrig fått ett riktigt svar. Går det med komponenten AspImage skapa thumbnails som ej sparas på servern. Ex: bild.asp?url=hej.gif

/ Marcus

Medlem sedan juni 20019 519 inlägg
#2

Ja, det ska väl vara möjligt. Men jag hade nog försökt att inte göra det.
http://www.webforum.nu/showthread.php?p=86678#post86678
Och istället för att läsa in orginal bildens binära data får du krympa den med AspImage och spotta ut AspImages bild data istället.

Kom ihåg att den först måste läsa av orginal bilden... sen krympa den med AspImage och sen igen läsa av den nya datan och visa den nya datan på bilden... och detta sker varje gång du uppdatera sidan då det är en dynamisk fil du läser in som bild källa (img src="bild.asp?bild=bob.gif").

Medlem sedan aug. 2002733 inlägg
#3

Någon form av kombination av dessa?

<%
Set Image = Server.CreateObject("AspImage.Image")
Image.Loadimage(strFilePath)

Image.ImageFormat = 1
Image.JPEGQuality = 90
Image.Resize 400,250

Image.FileName = strFilePath
Image.SaveImage
%>

<%
Response.ContentType = "application/x-whatever"
Const adTypeBinary = 1
Dim strFilePath
 
strFilePath = Server.MapPath("elo.gif") 'This is the path to the file on disk. 
 
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
 
Response.BinaryWrite objStream.Read
 
objStream.Close
Set objStream = Nothing%>
Medlem sedan juni 20019 519 inlägg
#4

Jag har aldrig använt mig av AspImage

Men det lilla jag förstå så ska du ju inte använda dig av "Image.SaveImage" eftersom du inte ville spara den? Response.ContentType ska nog också ändras
Sen ska du nog köra din image klass "inne" i din binära data..

<%
Response.ContentType = "application/x-whatever"
Dim strFilePath
strFilePath = Server.MapPath(Request.QueryString("url"))

Set Image = Server.CreateObject("AspImage.Image")
Image.Loadimage(strFilePath)

Image.ImageFormat = 1
Image.JPEGQuality = 90
Image.Resize 400,250

Response.BinaryWrite Image.Image

Set Image = Nothing
%>

Inte testad, läste bara lite snabbt manualen för AspImage

Medlem sedan aug. 2002733 inlägg
#5

När jag kör koden, får jag upp en ruta där det står om jag vill öppna eller spara filen. Samma för er?

http://denvitaharen.net/test.asp?url=elo.gif

Medlem sedan juni 20019 519 inlägg
#6

Använd en riktigt Response.ContentType = "application/x-whatever" så ska du nog se att den fungera bättre..

Medlem sedan juni 20019 519 inlägg
#7
<%
Dim strFilePath, sFileType, vFile
strFilePath = Server.MapPath(Request.QueryString("url"))

sFileType = "jpeg"
If InStr(strFilePath,".") Then
	vFile = Split(strFilePath,".")
	sFileType = vFile(Ubound(vFile)
End If

Response.ContentType = "image/" & sFileType

Set Image = Server.CreateObject("AspImage.Image")
Image.Loadimage(strFilePath)

Image.ImageFormat = 1
Image.JPEGQuality = 90
Image.Resize 400,250

Response.BinaryWrite Image.Image

Set Image = Nothing
%>
Medlem sedan aug. 2002733 inlägg
#8

För fortfarande spara/öppna om jag kör en jpeg bild: http://denvitaharen.net/test.asp?url=goal.jpg

Kör jag en gif bild får jag en tom vit bild: http://denvitaharen.net/test.asp?url=elo.gif

hm..

Medlem sedan juni 20019 519 inlägg
#9

goal.jpg fungerade för mig var ligger elo.gif så man kan se vad resultatet skall vara.

Medlem sedan aug. 2002733 inlägg
#10

Får du alltså inte upp en ruta med Spara/Öppna/Avbryt när du kör http://denvitaharen.net/test.asp?url=goal.jpg ?

Elo.gif ligger i samma mapp som test.asp

Medlem sedan juni 20019 519 inlägg
#11

ImageFormat = 1 är endast för JPG...
Läs http://www.serverobjects.com/comp/Aspimage.htm

och nej.. jag får inte upp Spara fältet... Firefox/Opera på en Mac testar jag det på nu.

Men Safari vill bara spara filen. prova lägga in innehållet i en <img> tagg...

<%
Dim strFilePath, sFileType, vFile
strFilePath = Server.MapPath(Request.QueryString("url"))

sFileType = "jpeg"
If InStr(strFilePath,".") Then
	vFile = Split(strFilePath,".")
	sFileType = vFile(Ubound(vFile)
End If

Response.ContentType = "image/" & sFileType

Set Image = Server.CreateObject("AspImage.Image")
Image.Loadimage(strFilePath)
Image.Resize 400,250

Response.BinaryWrite Image.Image

Set Image = Nothing
%>

prova det...

Läste precis:

Why doesn't AspImage support GIF?

Unisys differentiates between servers and workstations in their GIF licensing policies. In the case of Web servers, they expect the operator of the Web server to pay $1500 a year to allow dynamic generation of GIF images. Our suggestion is to avoid GIF. We don't support GIF LZW (Unisys) under any conditions.

Medlem sedan aug. 2002733 inlägg
#12

Nått är skumt eftersom jag fortfarande får upp spara/öppna fältet... men eftersom du inte får det beror det på klienten?

260 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)