|
|
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo
|
|
Przesunięty przez: joli 22-01-2009, 19:18 |
[MOD] [ ALBUM ] Znak wodny w albumie phpBB by Przemo |
Autor |
Wiadomość |
wizdaz

Posty: 62
|
Wysłany: 24-06-2004, 12:38 [MOD] [ ALBUM ] Znak wodny w albumie phpBB by Przemo
|
|
|
Witam
Na sieci znalazłem fajn? modyfikacj? galerii, która pozwoli na automatyczne dodawanie znaku wodnego we wszystkich zdjęciach, które są w galerii.
Ten mod - jeśli można go tak nazwać dodaje do zdjęcia Unregistered (w sam ?rodek)- jeśli galeri? przeglądaj? niezarejestrowani użytkownicy, oczywięcie napis można zmienia? na dowolny inny, także zmieniając jego pozycj? :d
Trzeba utworzyć plik o rozszerzeniu *.png :
http://www.niebylec.webd....upload/mark.png <- przykład
a i plik musi się nazywa? mark.png i trzeba go umieścić w katalogu : katalogTwojegoForum/album_mod/upload/mark.png
zaczynamy modyfikacj?:
[otwórz plik]
album_pic.php
[znajdź]
Kod: | include($album_root_path . 'album_common.'.$phpEx); |
[dodaj poniżej]
Kod: | // function for watermark
function mergePix($sourcefile,$insertfile, $pos=0,$transition=50)
{
//Get the resource idźs of the pictures
$insertfile_id = imageCreateFromPNG($insertfile);
$sourcefile_id = imageCreateFromJPEG($sourcefile);
//Get the sizes of both pix
$sourcefile_width=imageSX($sourcefile_id);
$sourcefile_height=imageSY($sourcefile_id);
$insertfile_width=imageSX($insertfile_id);
$insertfile_height=imageSY($insertfile_id);
//middle
if( $pos == 0 )
{
$dest_x = ( $sourcefile_width / 2 ) - ( $insertfile_width / 2 );
$dest_y = ( $sourcefile_height / 2 ) - ( $insertfile_height / 2 );
}
//top left
if( $pos == 1 )
{
$dest_x = 0;
$dest_y = 0;
}
//top right
if( $pos == 2 )
{
$dest_x = $sourcefile_width - $insertfile_width;
$dest_y = 0;
}
//bottom right
if( $pos == 3 )
{
$dest_x = $sourcefile_width - $insertfile_width;
$dest_y = $sourcefile_height - $insertfile_height;
}
//bottom left
if( $pos == 4 )
{
$dest_x = 0;
$dest_y = $sourcefile_height - $insertfile_height;
}
//top middle
if( $pos == 5 )
{
$dest_x = ( ( $sourcefile_width - $insertfile_width ) / 2 );
$dest_y = 0;
}
//middle right
if( $pos == 6 )
{
$dest_x = $sourcefile_width - $insertfile_width;
$dest_y = ( $sourcefile_height / 2 ) - ( $insertfile_height / 2 );
}
//bottom middle
if( $pos == 7 )
{
$dest_x = ( ( $sourcefile_width - $insertfile_width ) / 2 );
$dest_y = $sourcefile_height - $insertfile_height;
}
//middle left
if( $pos == 8 )
{
$dest_x = 0;
$dest_y = ( $sourcefile_height / 2 ) - ( $insertfile_height / 2 );
}
//The main thing : merge the two pix
imageCopyMerge($sourcefile_id, $insertfile_id,$dest_x,$dest_y,0,0,$insertfile_width,$insertfile_height,$transition);
//Create a jpeg out of the modified picture
// imagejpeg ($sourcefile_id,"$targetfile");
Imagejpeg($sourcefile_id,'',88);
ImageDestroy($sourcefile_id);
}
|
[znajdź]
Kod: | header('Content-type: image/jpeg'); |
[dodaj poniżej]
Kod: | // --------------------------------------------------------
// Okay, now we insert the watermark for unregistered users
// --------------------------------------------------------
if(!$userdata['session_logged_in']) {
/*
----------------------------------------
SETTINGS:
//$transition = Intensity of the transition (in percent)
//$position = Position where $insertfile will be inserted in $sourcefile
// 0 = middle
// 1 = top left
// 2 = top right
// 3 = bottom right
// 4 = bottom left
// 5 = top middle
// 6 = middle right
// 7 = bottom middle
// 8 = middle left
---------------------------------------------
*/
$position = 0;
$transition = 50;
// settings end
//Get the resource idźs of the pictures
$sourcefile = ALBUM_UPLOAD_PATH . $thispic['pic_filename'];
$insertfile = ALBUM_UPLOAD_PATH . 'mark.png';
mergePix($sourcefile, $insertfile, $position, $transition) ;
exit;
}
|
zapisz plik i podmieć go na serwrze - pamiętaj, najpierw zrób kopię bezpieczęstwa modyfikowanych plików - żeby pośniej nie było do nikogo pretensji!
A i gotowe, działając? modyfikacj? można ogląda? u mnie
www.niebylec.webd.pl/osp/forum/album.php - wystarczy kliknąć na miniaturkę i na samym dole jest mój znak wodny
pozdrowionka dla wszystkich
[ Dodano: 24-06-2004, 12:41 ]
tylko jest jeden problem - którego nie potrafi? rozwiąza? - zdjęcie na serwerze wynosi ok. 128kb a podczas wyświetlenia 250kb! jak to zmniejszy?? - to jest przez ten znak wodny, tylko jak ten bug usunąć? |
Ostatnio zmieniony przez wizdaz 24-06-2004, 22:15, w całości zmieniany 1 raz |
|
|
|
 |
Gadatliwa Kasia
|
|
|
|
Widmo


Pomógł: 180 razy Posty: 2435
|
Wysłany: 24-06-2004, 19:01
|
|
|
Kod: | //Create a jpeg out of the modified picture
// imagejpeg ($sourcefile_id,"$targetfile");
Imagejpeg($sourcefile_id,'',100);
ImageDestroy($sourcefile_id); |
zmien 100 na 90 |
_________________ Potrzebujesz pomocy? |
|
|
|
 |
arno

Pomógł: 4 razy Posty: 137
|
|
|
|
 |
wizdaz

Posty: 62
|
Wysłany: 24-06-2004, 22:16
|
|
|
Cytat: | Kod:
//Create a jpeg out of the modified picture
// imagejpeg ($sourcefile_id,"$targetfile");
Imagejpeg($sourcefile_id,'',100);
ImageDestroy($sourcefile_id);
|
Widmo - zmienićem na 88 |
|
|
|
 |
Widmo


Pomógł: 180 razy Posty: 2435
|
Wysłany: 24-06-2004, 22:54
|
|
|
a POMOG?O ?
ekhm, P - O - M - O - G - ? - O ? |
_________________ Potrzebujesz pomocy? |
|
|
|
 |
wizdaz

Posty: 62
|
Wysłany: 25-06-2004, 16:33
|
|
|
dzienki Widmo, teraz ?miga aż mi?o |
|
|
|
 |
Jakub_S
Posty: 7
|
Wysłany: 05-09-2004, 20:15
|
|
|
Witam,
Jednak znak wodny jest widziany tylko przez gości, a jak zrobić zeby byl widziany przez wszystkich
Z góry dziękuję |
|
|
|
 |
bajt

Posty: 82
|
Wysłany: 06-09-2004, 04:12
|
|
|
cos CI sie pomylilo bo u mnie widza go wszyscy |
|
|
|
 |
Jakub_S
Posty: 7
|
Wysłany: 06-09-2004, 12:40
|
|
|
nic mi sie nie pomili?o może ja co? popie..........
Co mam zmienić i gdzie zeby wszyscy widzieli znak wodny a nie tylko goście |
Ostatnio zmieniony przez Jakub_S 06-09-2004, 13:51, w całości zmieniany 1 raz |
|
|
|
 |
przecinek


Pomógł: 272 razy Posty: 890
|
Wysłany: 06-09-2004, 13:33
|
|
|
zamieć if(!$userdata['session_logged_in']) na if(1)
Ps. nie testowałem, nawet nie czytałem dokładnie kodu. |
|
|
|
 |
Jakub_S
Posty: 7
|
Wysłany: 06-09-2004, 13:52
|
|
|
przecinek napisał/a: | zamieć if(!$userdata['session_logged_in']) na if(1)
Ps. nie testowałem, nawet nie czytałem dokładnie kodu. |
Wielkie dzięki o to chodziło |
|
|
|
 |
shqvarny


Pomógł: 22 razy Posty: 513
|
Wysłany: 02-04-2005, 08:53
|
|
|
we wcześniejszych wersjach 1.9 chodziło, ale w finalnej już co? jest nie tak i się nic nie pozakuje. zna ktoś rozwiązanie |
|
|
|
 |
angel554

Posty: 136
|
Wysłany: 05-05-2005, 20:32
|
|
|
czy działa to w wersji przemo 1.9 ?? |
|
|
|
 |
They

Pomógł: 342 razy Posty: 2545
|
Wysłany: 06-05-2005, 01:46
|
|
|
tak |
|
|
|
 |
Gadatliwa Kasia
|
|
|
|
shqvarny


Pomógł: 22 razy Posty: 513
|
Wysłany: 07-05-2005, 11:35
|
|
|
a mi nie działa z najnowszą wersją :-/ nic nie pokazuje nowego.
instrukcja wykonana a plik mark.png też ok. |
|
|
|
 |
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!
Powered by phpBB modified by Przemo © 2003 phpBB
| Strona wygenerowana w 0,11 sekundy. Zapytań do SQL: 12 | |
 |
|