Kom ihåg mig?
Home Menu

Menu


Bildsammanslagning på serversidan

Ämnesverktyg Visningsalternativ
Oläst 2007-08-19, 13:53 #1
Forsgrens avatar
Forsgren Forsgren är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2007
Inlägg: 24
Forsgren Forsgren är inte uppkopplad
Nykomling
Forsgrens avatar
 
Reg.datum: Jul 2007
Inlägg: 24
Jag har ett litet problem.
Det är så att jag håller på med ett delscript som ska slå samman flera bilder till en. Den som hamnar överst i den "lagerstrukturen" är en PNG med en alphakanal.

Det fungerar bra överallt på bilden förutom den kant som hamnar ytterst mot det som är heltransparent. Där blir det en smal kant med ljusare pixlar. Något som inte finns med i originalbilden.

Någon som har förslag på en lösning till detta?

(hoppas att detta är rätt avdelning för en sådan här fråga)
Forsgren är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-19, 16:57 #2
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
Hur ser det ut?

Kod? Resultat?
hnn är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-08-19, 18:29 #3
Forsgrens avatar
Forsgren Forsgren är inte uppkopplad
Nykomling
 
Reg.datum: Jul 2007
Inlägg: 24
Forsgren Forsgren är inte uppkopplad
Nykomling
Forsgrens avatar
 
Reg.datum: Jul 2007
Inlägg: 24

Den ljusa kanten syns i mitten av bilden
(Bilden är här i dubbel storlek)


Kod:
<?php

header ("Content-type: image/png"); 
$imageurl = "upload/".$_GET["arg"];


//######################################

list($width, $height) = getimagesize($imageurl);
$new_width = 340;
$new_height = 480;

// Resample
$photoImage = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($imageurl);
imagecopyresampled($photoImage, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
ImageAlphaBlending($photoImage, true);
//######################################


$hackImage = ImageCreateFromPNG('hack.png');
imagesavealpha($hackImage,true);

$editImage = ImageCreateFromPNG('overlay.png');
imagesavealpha($editImage,true);

$logoW = ImageSX($photoImage);
$logoH = ImageSY($photoImage);

$coverW = ImageSX($editImage);
$coverH = ImageSY($editImage);

ImageCopy($hackImage, $photoImage, 3, 16, 0, 0, $logoW, $logoH);
ImageCopy($hackImage, $editImage, 0, 0, 0, 0, $coverW, $coverH);

imagepng($hackImage); // output to browser

ImageDestroy($photoImage);
ImageDestroy($hackImage);
ImageDestroy($editImage);
unlink($imageurl);

?>
Bilden byggs alltså upp av en "standardbild", ovanpå denna läggs en bild till, och sedan en "ram" bestående av en PNG.
Forsgren är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 01:30.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017