01 - 06 - 2020
Main Menu
Development
Old stories

Photo resize function

User Rating:  / 1
PoorBest 

Da har jeg fått til en fin måte å resize fotoene på i Familie boka for etterkommere og man kan nå sette en max størrelse på bildene. Bildene beholder selvsagt bredde/høyde forhold. For interesserte kan jeg presentere denne funksjonen, det er bare snakk om å finne størrelsen på rektanglet som bildet vil få.

public static RectangleF ResizeRectangle(int w, int h, int maxWidth, int maxHeight)
        {
            float ratioX = (float)maxWidth / (float)w;
            float ratioY = (float)maxHeight / (float)h;
            float scale = Math.Min(ratioX, ratioY);
            return new RectangleF(0, 0, w * scale, h * scale);
        }

Eksempel: Vi har et bilde som er 2500 pixler bredt og 1000 pixler høyt og vil resize det til max bredde på 200 og max høyde på 300 da blir regnestykket slik:

ratioX = 200 / 2500 = 0,08

ratioY = 300 / 1000 = 0,3

scale = (minste tallet av ratioX og ratioY) = 0,08

Bildet resized vil få bredde 2500 * 0,08 = 200 og høyden blir 1000 * 0,08 = 80

 

Hvis et bilde kommer for langt ned på siden (under marginen) blir det plassert på neste side. Man kan angi en max størrelse som bildet vil bli resizet til med samme bredde/høydeforhold som orginalen.

newdescfambok

 

04-05-2013 - Ny oppdatering er lastet opp - Slektsbok funksjonen er oppdatert til også å bruke photo resize funksjonen og plasserer bildet midtstilt på siden. Ancestor Tree vinduet bruker nå også photo resize funksjonen.

Comments  

 
0 #1 Torill 2013-05-02 22:02
Kjempebra, Ove! Vakre utskrifter..... du verden! :-)
Quote
 

Add comment

Security code
Refresh