Avatar billede Slettet bruger
15. januar 2006 - 22:19 Der er 11 kommentarer og
1 løsning

udregne fysiske billed-størrelse

Hejsa

Jeg sidder med en asp-side som skal finde et bestemt billede frem, og så ved body-onload skal starte en udskrift...
- Men kan man ikke på én eller anden måde omregne billedets opløsning til cm på papiret?
Findes det ikke én eller anden formel som bliver brugt her?
Altså hvis nu man har et billede på 200x200 pixels hvor mange kvadratcentimeter bliver det så eksempelvis på papiret?
Kan man ikke lave en funktion som kan regne højden og bredden på billedet ud til cm?

\Dan
Avatar billede jarret Nybegynder
15. januar 2006 - 23:50 #1
jeg kan sige så meget at Photoshop menre at der er 28,346 pixels/cm

så måske kunne man:

x = pixelbredde;

cmbredde = x/28,346
Avatar billede jarret Nybegynder
15. januar 2006 - 23:51 #2
(default)
Avatar billede cpufan Juniormester
16. januar 2006 - 01:14 #3
gælder jo så kun hvis billedet er i en 72 dpi opløsning

dpi = dots pr inch (pixels pr tomme)

72 dpi = 72/2,55cm

så du skal først finde opløsningen
Avatar billede Slettet bruger
16. januar 2006 - 09:58 #4
OK...
Jeg har en billedkomponent som kan fortælle den præcise opløsning...
- Men hvordan kan man finde den opløsning du taler om (dpi) hvis billedet for eksempel er på 360x450 pixels?
- Eller kan man overhovedet dette?

\Dan
Avatar billede cpufan Juniormester
16. januar 2006 - 10:08 #5
ikke ud fra pixels,

da opløsningen netop fortæller hvor mange der er pr tomme

et billede på 72 x 72 pixels med 72 dpi vil fylde 1 x 1 tomme

et billede på 300 x 300 pixels med 300 dpi vil fylde 1 x 1 tomme
Avatar billede cpufan Juniormester
16. januar 2006 - 10:09 #6
men mon ikke din komponent kan fortælle dpi også,
så skal du bare have det med i beregningen.
Avatar billede Slettet bruger
16. januar 2006 - 10:16 #7
Tjoe... måske...
Den komponent jeg bruger er OverPower.
Og scriptet som finder opløsningen ser således ud:
<%
sPath = "d:\Website\***\**********\"
sFilename = Replace(Request.QueryString("file"),"/","\")
Dim  swidth,sheight
WHImage sPath & sFilename,width,height
Sub WHImage(imagePath, width, height)
imagePath = CStr(imagePath)
set imageObject = Server.CreateObject("Overpower.ImageLib")
imageObject.pictureSize imagePath, width, height
swidth  =  width
sheight = height
set imageObject=nothing
End Sub
%>

- Har du en idé til hvordan vi kan hente dpi der også?

\Dan
Avatar billede cpufan Juniormester
16. januar 2006 - 10:31 #8
hmmm, overpower laver billeder on-the-fly så mon ikke
den pr default laver 72 dpi......
Avatar billede Slettet bruger
16. januar 2006 - 10:44 #9
hmm... ok!

I mit ovenstående script laver OverPower jo ikke noget ved billedet. Den skal bare finde ud af hvad højden og bredden er på billedet, i pixels.

Men hvordan skal formlen så se ud, hvis vi antager at billedet er på 72 dpi?
- Jeg kan ikke lige gennemskue den...

Der skal vel være én formel til højden i cm, og én til bredden i cm...

\Dan
Avatar billede Slettet bruger
22. januar 2006 - 19:06 #10
Jeg siger mange tak for hjælpen til jer begge! Jeg fik det lavet med 72 dpi...

Smider I ikke lige begge et svar for point?

\Dan
Avatar billede cpufan Juniormester
22. januar 2006 - 19:11 #11
fint kommer her
Avatar billede Slettet bruger
27. januar 2006 - 18:26 #12
- Nå! Det lader ikke til at jarret er interesseret i pointene! Så du får den alle cpufan!

Sig til jarret, hvis du ombestemmer dig!

\Dan
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester