webForumDet fria alternativet

Image preview??

10 svar · 419 visningar · startad av Jesper T

Jesper TMedlem sedan nov. 20017 058 inlägg
#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

SkarreMedlem sedan apr. 20012 447 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.

JojoxxMedlem sedan juni 20004 306 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>
solbulleMedlem sedan mars 20014 998 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.

Jesper TMedlem sedan nov. 20017 058 inlägg
#5

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

solbulleMedlem sedan mars 20014 998 inlägg
#6

:r

JojoxxMedlem sedan juni 20004 306 inlägg
#7

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

JojoxxMedlem sedan juni 20004 306 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.

Jesper TMedlem sedan nov. 20017 058 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

@ndersMedlem sedan juni 200026 914 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,

Jesper TMedlem sedan nov. 20017 058 inlägg
#11

Ok!
Tack. :)

Genererad på 387 ms · cache AV · v20260730165559-full.f96bc7eb