Avatar billede random Nybegynder
08. maj 2005 - 19:38 Der er 12 kommentarer og
1 løsning

Upload billede med print af logo

Hej

Jeg har en opload funktion som ser ud som følger neden for. Her bliver navnet på firmaet skrevet ind i billedet når det uploades.

Men jeg vil gerne have at jeg i stedet for kan uploade et trans-billede ovenpå sådan at logoet er faidet ud ovenpå billedet - men hvordan gør jeg det??


fileName = "image_"&Last_ID&".jpg"
   
set rs = Server.CreateObject("ADODB.Recordset")     
strSQL = "UPDATE " & TB_SHOP_CONTENT & " SET SHOP_CONTENT_PIC = '" & fileName & "' WHERE SHOP_CONTENT_ID = '" & Last_ID & "'"
rs.open strSQL,strDNS         
   

  For each file In mySmartUpload.Files
  '  Only if the file exist
      If not file.IsMissing Then
        file.SaveAs("../../shop/" & FileName)
       
        Set Image = Server.CreateObject("AspImage.Image")
          Image.LoadImage Server.MapPath("../../shop/"&fileName&"")
        response.write Server.MapPath("../../shop/"&fileName&"")
        ImageHeight = Image.MaxY
        ImageWidth = Image.MaxX
   
        copyheight = ImageHeight
   
        Image.ImageFormat = 1
        Image.JPEGQuality = 50
   
        size = "400"
   
        if int(ImageHeight) > int(size) then
   
          newHeight = size
        newWidth = Cint(ImageWidth*size/ImageHeight)
   
        Image.ResizeR newWidth, newHeight
   
        copyheight = newHeight
   
        End if
       
        if NewWidth > size then
        NewWidth = size
          NewHeight = Cint(ImageHeight*size/ImageWidth)
        Image.ResizeR NewWidth,NewHeight
       
        copyheight = newHeight
        end if
   
        Image.FontName = "Verdana"
        Image.FontColor = vbWhite
        Image.FontSize = 10
        Image.Bold = True
        Image.ThreeDColor = vbBlack

        'Will place the text 18 pixels from the bottom and 2 pixel from the left of the picture
        'Image.TextOut strMessage, Image.X, Image.Y, true

        Image.TextOut "© NAVN", 2, copyheight-18, True
   
        Image.FileName = (server.mappath("../../shop/"&fileName&""))
        Image.SaveImage
        Set Image = Nothing
       
        ELSE
       
        set rs = Server.CreateObject("ADODB.Recordset")     
        strSQL = "UPDATE " & TB_SHOP_CONTENT & " SET SHOP_CONTENT_PIC = 'soon.jpg' WHERE SHOP_CONTENT_ID = '" & Last_ID & "'"
        rs.open strSQL,strDNS         

          End If
  Next

  End If
Avatar billede random Nybegynder
09. maj 2005 - 12:13 #1
Hmm er der slet ikke nogle der ved hvordan jeg lavet det?
Avatar billede hiks Nybegynder
09. maj 2005 - 12:23 #2
jow det er ikke så svært... :o)

kig på følgende og spørg hvis du ikke helt kan finde ud af det:

Image.AddImage strFileName, intX, intY True/False 'Adds a new image to the canvas using the intX and intY coordinates.

Image.AddImageTransparent strFileName, intX, intY, intTransparentColor True/False 'Adds a new image to the canvas using the intX and intY coordinates. intTransparent in the image strFilename is treated as transparent. intTransparentColor is the exact color to make transparent. "Similar" colors are not replaced.

Image.AddImageTransparent "d:\apps\gr3\im.jpg", 5, 12, vbWhite

taget herfra: http://www.serverobjects.com/comp/Aspimage.htm

Jeg vil tro den du leder efter er Image.AddImageTransparent...

Spørg løs! :o)

/hiks
Avatar billede random Nybegynder
10. maj 2005 - 13:44 #3
Hej, du har helt ret - det er lige det jeg leder efter, men jeg kan ikke helt se hvor jeg skal sætte det ind i min eksisterende kode - kan du overskue det?
Avatar billede jamfighter Nybegynder
10. maj 2005 - 17:55 #4
sætter du det ind før du resizer dit billede så bliver det indsatte billede også ændret i størrelse, venter du med at sætte det ind til efter du har resizet, bliver det selvsagt ikke ændret...
Du skal bare have det sat ind før du gemmer dit billede, altså før Image.SaveImage :)

Vær også opmærksom på at hvis du bruger addimagetransperant, så er det kun og KUN den farve du siger der bliver gjort transperant, så har du noget der er anti aliased, så kan du være uheldig at det ser underligt ud... sad med det problem da jeg selv lavede et script magen til her for en måneds tid siden...
Avatar billede hiks Nybegynder
10. maj 2005 - 21:06 #5
ja - som jamfighter siger så er det nok mest praktisk inden du resizer, hvis du gør det. Og ellers så sætter du det bare ind samme sted som du har din textout pt.

det er jo stort set samme "metode" bortset fra at du skal have en sti på istedet for teksten du vil printe.

/hiks
Avatar billede random Nybegynder
13. maj 2005 - 15:01 #6
Ok, ja det ser ud til at det er det jeg leder efter. Jeg har nu sat det ind, men der er ikke noget billede der bliver skrevet oveni det andet - har jeg lavet noget forkert?


if int(ImageHeight) > int(size) then
   
          newHeight = size
        newWidth = Cint(ImageWidth*size/ImageHeight)
   
        Image.ResizeR newWidth, newHeight
   
        copyheight = newHeight
   
        End if
       
        if NewWidth > size then
        NewWidth = size
          NewHeight = Cint(ImageHeight*size/ImageWidth)
        Image.ResizeR NewWidth,NewHeight
       
        copyheight = newHeight
        end if

        Image.AddImageTransparent "d:\web\shop\soon.jpg", 5, 12, vbWhite
       
        Image.FileName = (server.mappath("../../shop/"&fileName&""))
        Image.SaveImage
        Set Image = Nothing
Avatar billede random Nybegynder
13. maj 2005 - 23:11 #7
Er der nogen der kan se hva jeg gør af fejl?
Avatar billede jamfighter Nybegynder
15. maj 2005 - 13:30 #8
umiddelbart ser det rigtigt ud, men måske du ikke har skrevet den rigtige sti til det billede der skal ligges henover...

prøv at bruge server.mappath() istedet for...
Avatar billede random Nybegynder
22. maj 2005 - 18:02 #9
ok, det prøver jeg lige at ændre og vender lige tilbage..
Avatar billede random Nybegynder
22. maj 2005 - 18:12 #10
ok, super det virker jo rigtig godt.

Hvad var det med billedet - må det kun være én farve der bliver transperant??

Giv mig et svar så får du nogle point
Avatar billede jamfighter Nybegynder
22. maj 2005 - 18:17 #11
Ja du kan kun definere en farve der gøres transperant...

Også det jeg mente med at du skulle passe på med AA og AF...
desværre virker det ikke med PNG så vidt jeg husker, der kan du ellers selv sætte en transperant farve...
Avatar billede random Nybegynder
22. maj 2005 - 23:43 #12
ok tak for hjælpen, jeg har givet dig point og karma :)
Avatar billede jamfighter Nybegynder
23. maj 2005 - 23:19 #13
np og takker for point :)
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