[PHP] JPEG en PNG

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ben bezig met het volgende

Heb een achtergrond met een cirkel in het midden met een kleur (255,0,255)
Ik wil in die cirkel een andere foto plakken!

Dus wil een soort foto lijst om de foto heen maken.
Heb de volgende code gemaakt, alleen foto verwijnt. en zie alleen de frame.

Mijn vraag is, is het wel mogelijk om in een transperante gif een foto te plakken?
Heb trouwens ook al een png gebruikt als achtergrond maar werkt ook niet.

hoop dat het nog duidelijk is!
PHP: image.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
        // achtergrond foto inladen
        $background     = imagecreatefromgif($_SYSTEEM_VARS['preview_image']);
        // transperante kleur bepalen
        $trans_kleur    = imagecolorclosest($background, 255, 0, 255);
        imagecolortransparent($background, $trans_kleur);
        
        // foto van kind inladen
        if ($fotoType=='image/jpeg' || $fotoType=='image/pjpeg'){
            $foto   = imagecreatefromjpeg($fotoAdres);
        }
        elseif ($fotoType=='image/png'){
            $foto   = imagecreatefrompng($fotoAdres);
        }
        elseif ($fotoType=='image/gif') {
            $foto   = imagecreatefromgif($fotoAdres);
        }
        
        // foto en achtergrond samenvoegen
//      imagecopymerge($foto , $background, 0, 28, 0, 0, ImageSX($foto), ImageSY($foto), 100);
        imagecopy($foto , $background, 0, 28, 0, 0, ImageSX($foto), ImageSY($foto));        
        header("Content-Type: image/png");
        imagepng($background);
        exit;

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

Als de cirkel in het midden transparant is, waarom kopiëer je het frame dan niet in de foto ipv andersom? De cirkel is transparant, dus alleen het frame wordt in de foto gezet. Op de plaats van de cirkel blijf je de foto zien.

disclaimer: bovenstaande is gewoon een pure logische benadering, ik heb verder geen ervaring met GD oid :)

[ Voor 19% gewijzigd door .oisyn op 24-11-2006 13:03 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik kopieer ook de frame in de foto, maar hij lijkt de transperantie niet te pakken, het vlak blijft wit.

Acties:
  • 0 Henk 'm!

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 20:45

RM-rf

1 2 3 4 5 7 6 8 9

uit: http://de3.php.net/imagecolortransparent
Note: Transparency is copied only with imagecopymerge() and true color images, not with imagecopy() or pallete images.
als imagecopymerge niet werkt, kan het misschien zijn dat je je GIF eerst moet omvormen tot een true color afbeeldingen, GIF zelf heeft enkel een 'vast' pallet

[ Voor 32% gewijzigd door RM-rf op 24-11-2006 13:21 ]

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
sorry, hele domme fout van mijn, imagepng($background); moest zijn imagepng($foto);

echt, lag denk ik te slapen! sorry!