Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 19:43 Der er 16 kommentarer og
1 løsning

Imageconverter i C# til jpg fra bmp, gif mm

Hej jeg sidder lige og mangler lidt hjælp...

Jeg leder efter en tutorial eller kodeeksempler der bruger C# til at konvertere billede filer... jeg skal bruge noget der konvertere til jpg, men det burde være underordnet...

Jeg er ikke en haj til C# så en henvisning til msdn er ikke nok.

Så hvis der er nogen der brænder inde med et lille eksempel eller et link til en gratis tut, så skriv lige...
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 19:52 #1
F.eks.

Image imgInFile=Image.FromFile(strFileName);
imgInFile.Save(strOutFileName,ImageFormat.Bmp);
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 19:54 #2
Du finder naturligvis Image under System.Drawing.

Andre formater er f.eks. Jpeg, Gif, Png, Tiff og Icon.
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 19:57 #3
Hov, du skal vist både
using System.Drawing;
using System.Drawing.Imaging;
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:04 #4
uhm uhm uhm.. ser spændede ud.. forventede noget meget mere indviklet... jeg ser lige på det og vender tilbage...
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:09 #5
det her virker ikke.. intet sker, ingen fejlmeddelse
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:09 #6
Image imgInFile=Image.FromFile("test.bmp");
imgInFile.Save(strOutFileName,ImageFormat.Jpg);
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:10 #7
ups vent
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:15 #8
hvad er fejlen her.. min bmp som skal blive til et jpg ligger i samme mappe

<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<script runat="server">
void Page_Load(Object Src, EventArgs E)
{
Image imgInFile=Image.FromFile(test.bmp);
imgInFile.Save(strOutFileName,ImageFormat.Jpg);

}
</script>
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 20:16 #9
fejlen er : Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS0104: 'Image' is an ambiguous reference

Source Error:



Line 10: void Page_Load(Object Src, EventArgs E)
Line 11: {
Line 12: Image imgInFile=Image.FromFile(test.bmp);
Line 13: imgInFile.Save(strOutFileName,ImageFormat.Jpg);
Line 14:
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 20:37 #10
Det betyder Image kan komme fra flere forskellige namespaces og compileren ved ikke hvilket namespace du tænker på. Det løses ved at skrive System.Drawing.Image i stedet for bare Image.

Det skyldes sikkert at du har using på et andet namespace som også indeholder Image.
Avatar billede billen Nybegynder
06. januar 2004 - 20:38 #11
Det er fordi, Image findes i flere namespaces.


Prøv:

System.Drawing.Image imgInFile=System.Drawing.Image.FromFile(test.bmp);
Avatar billede billen Nybegynder
06. januar 2004 - 20:40 #12
System.Web.UI.WebControls
System.Web.UI.MobileControls

findes den også i, så en af dem må du også inkludere.
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 20:41 #13
test.bmp skal selvfølgelig være en string, altså med " rundt om.

strOutFileName er også en string, som angiver filnavnet som du vil give din nye fil. Her skal en evt. sti altså også være.

System.Drawing.Image imgInFile=Image.FromFile("test.bmp");
imgInFile.Save("test.jpg",ImageFormat.Jpeg);

(Der er ikke noget der hedder Jpg som filformat, kun Jpeg)
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 21:48 #14
Selv med System.Drawing.Image får jeg den samme fejl som før, jeg har includeret System.Web.IU.WebControls
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 21:55 #15
jeg har prøvet at skrive
System.Drawing.Image imgInFile=System.Drawing.Image.FromFile("test.bmp");
imgInFile.Save("test.jpg",ImageFormat.Jpeg);


nu siger den, den ikke kan finde filen.. skal det være en c:\\ addresse ? skal jeg bruge server.mappath ?
Avatar billede ddobbeltv Nybegynder
06. januar 2004 - 22:02 #16
tak for din tid.. det var server.mappath der manglede

Her er den færdige code hvis andre læser denne tråd :

<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<script runat="server">
void Page_Load(Object Src, EventArgs E)
{
string strFileName=Server.MapPath("test.bmp");
string strFileNameOut=Server.MapPath("test.jpg");

System.Drawing.Image imgInFile=System.Drawing.Image.FromFile(strFileName);
imgInFile.Save(strFileNameOut,ImageFormat.Jpeg);

}
</script>
Avatar billede nielsbrinch Nybegynder
06. januar 2004 - 23:14 #17
Hvis du ikke bruger Server.MapPath er du i C:\Windows\System eller sådan noget.

Tak for den endelige kode, det var hensynsfuldt af dig.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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