webForumDet fria alternativet
Logga in / Bli medlem

Image preview??

JavaScript

10 svar · 419 visningar · startad av Jesper T

Medlem sedan nov. 20017 144 inlägg
Trådstart#1

Går det att i javascript ta ut ett mått på en bild och sedan visa en förminskad bild av den. Alltså inte beskära eller något sådant utan endast visa en mindre bild.
Tänk att du har en bil som är 600 x 300 och nu vill jag visa en "preview" som endast är 30% av storleken.
Det går ju att skriva w=60 h=30 på den lilla bilden men skulle det då visas en annan bild med andra proportioner så ser det fult ut.

P.s. Det smidigaste hade varit att skriva w=30% h=30%, men det går ju inte.

Är det ngn som har ett tips?

MVH Jesper T

Medlem sedan apr. 20012 427 inlägg
#2

Jag har inte lösningen på problemet men undrar varför du tar genvägen att bara visa en hoptryckt version av den stora bilden istället för att göra tumnaglar.

Medlem sedan juni 20004 308 inlägg
#3

Jag är inte riktigt säker på hur du vill ha det, men här är ett exempel på hur du läser av information från en bild och använder det till något... Du måste dock alltid ladda bilden för att kunna läsa denna info, men det går lika bra att ladda den via JavaScript istället för att visa den på sida.( img=new Image(); img.src="bild.gif"; )

<img name="foo" src="http://www.webforum.nu/images/wfstandard/logo_webforum.gif">
<form>
<input type="button" value="Visa" onClick="visaThumb(50)">
</form>
<script type="text/javascript">
function visaThumb(p){
	var w=Math.round(document.images['foo'].width*(p/100));
	var h=Math.round(document.images['foo'].height*(p/100));
	var url=document.images['foo'].src;
	var foo=window.open("","","width="+w+",height="+h);
	with(foo.document){
		open();
		write("<html><body marginwidth=0 marginheight=0 leftmargin=0 topmargin=0 rightmargin=0><img src=\""+url+"\" width=\""+w+"\" height=\""+h+"\"></body></html>");
		close();
	}
}
</script>
Medlem sedan mars 20015 287 inlägg
#4

men skulle det då visas en annan bild med andra proportioner så ser det fult ut.

Om det bara är det som är grejen räcker det ju med att sätta tex höjden, då sätts ju bredden automatiskt och bilderna har fortfarande sina rätta proportioner.

Medlem sedan nov. 20017 144 inlägg
#5

Du är en pärla, Solbulle! F-n va snyggt det blev nu!
//Jesper :)

Medlem sedan mars 20015 287 inlägg
#6

:r

Medlem sedan juni 20004 308 inlägg
#7

Det är sant. Jag fick för mig att du sa att bilderna var olika stora.

Medlem sedan juni 20004 308 inlägg
#8

Kom att tänka om en annan sak. Eftersom du verkar hålla på med ASP så kan du titta på AspImage från Server Objects (de som ligger bakom AspMail som är rätt vanligt förekommande). Där har du bland annat möjligheten att direkt på serversidan skala/trimma/vrida och vända bilderna.

Medlem sedan nov. 20017 144 inlägg
#9

Jojoxx: Ok, var säkert lite luddig i min förklaring, men det gjör inte så mycket att det skiljer lite på dem i bredd. Tack, för tipset med den där komponenten men mitt webhotell har bara aspupload och har svårt att tro att de vill installera fler komponenter. *snåljåpar*. En sak till: är det lika resurskrävande att sätta en mindre "size"(bredd och höjd) på en bild som att ha den i orginalstorlek?
Är det smartare att ha "thumbnails"?

MVH Jesper

Medlem sedan juni 200032 967 inlägg
#10

Det smartaste är att visa mindre bilder som thumbnails istället för att förminska on-the-fly i webbläsaren.

Mvh,

Medlem sedan nov. 20017 144 inlägg
#11

Ok!
Tack. :)

251 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)