I klassisk ASP så finnes det ingen innebygget funksjonalitet for å rotere bilder. Da må man bruke tredjeparts-komponenter som f.eks ASPJpeg. I ASP:NET derimot så finnes det et innebygget bibliotek som heter System.Drawing og kan brukes både for å rotere bilder og for annen form av bildemanipulering.
Rotere et bilde
Nedenfor finner du eksempelkode for å rotere et bilde. Noter at koden må modifiseres litt for at det skal virke for akkurat ditt bilde. Søkeveien til filen må forandres, og man kan også trenge å justere bildetypen om man ikke bruker PNG-bilder.
Koden er skrevet for å brukes i så kalt codebehind-posisjon og kan trenge modifikasjoner for å virke korekt. Du burde justere namespace og klassenavn etter navn på prosjektet ditt og ASP.NET-formularet ditt.
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Drawing; using System.Drawing.Imaging; using System.IO; namespace MyProject { public partial class MyClass: System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { // Read source data System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath("./images/test.png")); // Rotate & Flip img.RotateFlip(RotateFlipType.Rotate90FlipX); // Output Response.Clear(); Response.ClearHeaders(); Response.AddHeader("Content-Type", "image/png"); MemoryStream ms = new MemoryStream(); img.Save(ms, ImageFormat.Png); ms.WriteTo(Context.Response.OutputStream); Response.End(); } } }
Verdien for RotateFlip
De verdiene man kan bruke for anropet til metoden RotateFlip() kan man se i dokumentasjonen for RotateFlipType . Husk at man ikke bare kan rotere bildene med denne metoden, men må også speilvende bildene på forskjellige steder steder.