Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] znaki wodne - jakość
propage
post
Post #1





Grupa: Zarejestrowani
Postów: 330
Pomógł: 0
Dołączył: 25.01.2008

Ostrzeżenie: (0%)
-----


gry skryptem chcę nakladać zdjęcie na zdjęcie (aby tworzyć znaki wodne), używając kodu

  1. $znaczek = ImageCreateFromPng( $config['watermark_src'] );
  2.  
  3. $znaczek_w = imagesx( $znaczek ); // szerokosc znaczka
  4. $znaczek_h = imagesy( $znaczek ); // wysokosc znaczka
  5.  
  6. $image_w = imagesx( $dst ); // szerokosc znaczka
  7. $image_h = imagesy( $dst ); // wysokosc znaczka
  8.  
  9. $od_x = $image_w - $znaczek_w - 10;
  10. //$od_x = 0;
  11. $od_y = $image_h - $znaczek_h - 10;
  12.  
  13. imagecopyresampled( $dst, $znaczek, $od_x, $od_y , 0, 0, $znaczek_w ,$znaczek_h, $znaczek_w, $znaczek_h);


To takie zdjęcie traci na jakości o 10% na oko.
Są jakieś sposoby, aby mimo nakładania zdjęcia na zdjęcie zachować odpowiednią jakość zdjęcia?

Wiem, że istnieją zewnętrzne programy, ale nie wszystkie serwery je obsługują.
Go to the top of the page
+Quote Post
maly_swd
post
Post #2





Grupa: Zarejestrowani
Postów: 744
Pomógł: 118
Dołączył: 14.02.2009
Skąd: poziome

Ostrzeżenie: (0%)
-----


z czego robisz: $dst
Czy uzywasz odpowiednio funkcji do tworzenie kanalu alpha?
Go to the top of the page
+Quote Post
propage
post
Post #3





Grupa: Zarejestrowani
Postów: 330
Pomógł: 0
Dołączył: 25.01.2008

Ostrzeżenie: (0%)
-----


  1. $dst = imagecreatetruecolor($tnWidth, $tnHeight);
Go to the top of the page
+Quote Post
tehaha
post
Post #4





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


na samym końcu Twojego skryptu dodaj jeszcze imagejpeg(), i ustaw w nim parametr jakości na 100, który domyślnie jest na 75
Go to the top of the page
+Quote Post
#luq
post
Post #5





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


Cytat(tehaha @ 31.03.2010, 16:28:02 ) *
na samym końcu Twojego skryptu dodaj jeszcze imagejpeg(), i ustaw w nim parametr jakości na 100, który domyślnie jest na 75

Przecież jpeg nie obsługuje kanału alpha.
*.png Panie, *.png.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 23:54