webForumDet fria alternativet

ShotGraph

5 svar · 290 visningar · startad av Palle

PalleMedlem sedan apr. 20003 174 inlägg
#1

Hej!

Fnular med en funktion som skapar thumbnails, använder komponenten ShotGraph (http://www.shotgraph.com).
Jag vill endast sätta en fast bredd på bilden, höjden på bilden ska anpassa sig efter
bredden så ration bibehålls... hänger ni med?

Någon som har arbetat med denna komponen så mottages tips å det vänligaste
för dokumentationen var ingen höjjdare tyvärr.

Engine^Medlem sedan dec. 20003 887 inlägg
#2

Du bestämmer ju storlek på bilden när du skapar den...ShotGraph API. Det står ju precis hur du ska göra.

CreateImage xsize,ysize,16
ReadImage file_path,pal,0,0

Räkna får du väl göra själv... Eftersom du lär veta filnamnet, så är det bara att använda dig av GetFileDimensions sFileName, iX, iY [, aPalette]

[edit] Ratio = Ny {höjd | bredd} / Gammal {höjd | bredd}

nyHöjd = GammalHöjd * Ratio
nyBredd = GammalBredd * Ratio

PalleMedlem sedan apr. 20003 174 inlägg
#3

Jo jag vet hur jag får fram höjd och bredd på bilden,
men jag förstår inte hur jag ska få den att anpassa sig, det är där problemet ligger.

Hur räknar jag ut detta? (Jag suger på allt som heter, stavas och omnämns som matte. ;) )

Lite kod:

[RED]objImage.GetFileDimensions strSource, intOrgWidth, intOrgHeight
objImage.CreateImage [b]60[/b], [b]???[/b], 256[/RED]

60 = Ny bredd på thumbnail
??? = Ny höjd på thumnail

PatrikBMedlem sedan mars 20002 836 inlägg
#4

du får räkna lite granna ;)

b=bredd
h=höjd
nb=ny bredd
nh=ny höjd

(h/b)=(nh/nb) ==> nh=(nb*h)/b

eller säg att bildens bredd = 700 och höjden = 1000
Dina thumbs ska ha bredden 70

nh=(70*1000)/700
nh=100

cya,
PatrikB

Engine^Medlem sedan dec. 20003 887 inlägg
#5
objImage.CreateImage 60, (60 * intOrgHeight / intOrgWidth), 256
PalleMedlem sedan apr. 20003 174 inlägg
#6

Hittade precis en artikel om calculate aspect ratio som visar hur en sådan uträkning kan se ut,
så jag lyckades fnula fram en lösning slut.

Artikeln: http://www.actionjackson.com/articles/19991119/

[red]palle + matte = [i]false[/i] ;) [/RED]

Tack för hjälpen! :bire

128 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)