Wyświetlanie wygenerowanej grafiki.

Dział poświęcony programowaniu w każdym języku.

Wyświetlanie wygenerowanej grafiki.

Postprzez privace » 2008-12-04, 18:21:19

Czy ktoś ma pojęcie o grafice w php?
Otóż mam problem.
W skrypcie (przytoczę najważniejsze fragmenty) mam jakiś formularz, w którym wybieram kolejne obrazki
Kod: Zaznacz cały
<form action="strona.php" method="post">
<label>
Text: <input type="text" name="word" />
</label>
<p />
Style:<p />
          <label>
            <input name="color" type="radio" value="1" checked="checked"  />
<img src=".obrazek" alt="" />         </label>

(itd)

Następnie skrypt generuje kilka wybranych obrazków
Kod: Zaznacz cały
<input type="submit" name="btn" value="Stwórz napis" />
</form>
<p />
<strong>Podgląd</strong>

<?php
if (isset($_POST['btn'])) {
?>

<form action="" name="results">
   
      <?php

      if ($_POST['color'] > 0) {
         $color = $_POST['color'];
      } else {
         $color = 1;
      }

      $word = $_POST['word'];
      $x = strlen($word);
      
      for ($i=0; $i<$x; $i++) {
         $c = $word[$i];
         if ($c == ' ') {
            echo '<br />';
         } else {
            // echo "$c";
            echo "<img src='jakiś.gif' alt='"' />";
         }
      }

      ?>
<p />
<strong>Kod na stronę www</strong>

<textarea name="code" onClick="select_all();">
<a href="strona.php" target="_blank"><?php
$word = $_POST['word'];
$x = strlen($word);

for ($i=0; $i<$x; $i++) {
   $c = $word[$i];
   echo "<img src='jakiś.gif' border='0' alt='' />";
}
?></a>
<br />
<a href="strona.php" target="_blank">jakiś tekst</a>
</textarea>
<p />

Da się zrobić coś, aby skrypt generował jeden obraz zamiast ciągu pojedynczych w gif lub png?
Kombinowałam różnie, ale za kiepsko mi idzie w php :(
Może coś w rodzaju "imagecreatefromgif"?
RATUNKU!

(może niejasno wytłumaczyłam, skrypt wstępnie jest na http://sweetbrokacik.pl/rozrywka/old/gen/1.php i chodzi o to, żeby powstawał napis w jednym pliku, zamiast kolejnych literek)
W moim obiektywie
Hobby lalkowe

privaceFemale
V.I.P.
V.I.P.
 
Posty: 7315
Dołączył(a): 2006-09-10, 19:11:58
Podziękował : 0 razy
Otrzymał podziękowań: 0 razy

Re: Wyświetlanie wygenerowanej grafiki.

Postprzez junior » 2008-12-04, 20:31:43

poszperałem po necie i znalazłem:
If you want to merge gif animate you must split image to multiple frame and merge it frame by frame.
Finally you just merge multiple frame back to gif animate it completed. :)

learn more about this case

http://www.myfineday.com/2008/10/02/php ... f-animate/

może się okazać że trochę się pobawisz, bo trzeba każdą literkę rozłożyć na klatki i sklejać litery klatka po klatce. Ałuu

może na http://phpclasses.ca coś znajdziesz jest tam mnóstwo class może coś podpasuje
zawsze możesz się nie zgodzić z opinią autora tego postu.
Avatar użytkownika
juniorMale
V.I.P.
V.I.P.
 
Posty: 1446
Dołączył(a): 2008-06-22, 11:07:52
Lokalizacja: Łódź
Podziękował : 0 razy
Otrzymał podziękowań: 4 razy

Re: Wyświetlanie wygenerowanej grafiki.

Postprzez BlueMan » 2008-12-04, 21:55:51

http://phpclasses.sgboards.com/browse/package/3163.html - pewnie to? :)
Ale na pewno nie jest to łatwe... .
Czytaj regulamin - unikniesz wielu problemów.
Korzystajcie z załączników na forum aby pliki nie ginęły w przyszłości w zewnętrznych serwisach!

Obrazek
Avatar użytkownika
BlueManMale
Administrator
Administrator
 
Posty: 19092
Dołączył(a): 2004-05-26, 17:34:59
Lokalizacja: Dabrowa Górn.
Podziękował : 6 razy
Otrzymał podziękowań: 5 razy
Imię: Szymon

Re: Wyświetlanie wygenerowanej grafiki.

Postprzez privace » 2008-12-05, 00:28:18

Nie, to nie to mi chodzi :/
A może w taki razie używając czcionki i tła? Tzn. przezroczysta czcionka na nieprzezroczystym tle i wyświetlana w połączeniu z drugim plikiem?
Coś w stylu
Kod: Zaznacz cały
header(Content-type: image/gif);
$obrazek = ImageCreate;
ImageCreateFromGif($obrazek1;$czcionka); [color=#FF0000](lub ImageString($obrazek1;czcionka)?[/color]
ImageGif($obrazek);
ImageDestroy($obrazek);
?>

albo wprowadzając tekst z użyciem czcionki z pliku
Kod: Zaznacz cały
imagettftext($image, $rozmiar, $pochylenie, $x, $y, $kolor, $font,'Tekst do
   wyświetlenia');

Ma ktoś pojęcie, czy da się to jakoś zrobić, żeby działało?
Znalazłam coś podobnego, co chcę uzyskać, ale nie mam pojęcia "jak to ugryźć"
Poniższy kod wczytuje dwa obrazy, a następnie kopiuje drugi na pierwszy:

1. $image = imagecreatefromjpeg("gory.jpg");
2. $image2 = imagecreatefromgif("znak.gif");
3. list($width, $height) = getimagesize("watermark.gif");
4. imagecopy($image, $image2, 400, 300, 0, 0, $width, $height);

Ponieważ drugi z wczytywanych obrazów to GIF, w którym zapisano transparencję, więc w efekcie skopiowane zostaną tylko nieprzezroczyste elementy. Łatwo widać to na nietypowych kształtach. Jeśli na przykład GIF zawiera elipsę, to w takiej postaci zostanie ona wklejona na zdjęcie.
W moim obiektywie
Hobby lalkowe

privaceFemale
V.I.P.
V.I.P.
 
Posty: 7315
Dołączył(a): 2006-09-10, 19:11:58
Podziękował : 0 razy
Otrzymał podziękowań: 0 razy

Re: Wyświetlanie wygenerowanej grafiki.

Postprzez junior » 2008-12-05, 17:27:47

co znaczy działało ? bo ja np już się pogubiłem co chcesz zrobić, na początku myślałem, że chcesz skleić tamte literki w jeden animowany obrazek, do tego musiałabyś rozłożyć każdą literkę na klatki, potworzyć każdą klatkę z literek (pojedyncza klatka literki) i złożyć to w jednego gifa.
1 kod pomijając że jest niespójny napisze tekst na obrazku
a 2 kod umieszcza na 1 gifie 2 gif tylko też 3 linia wydaje się być zbędna.
Wyjaśnij jaki efekt chcesz uzyskać.
To ma być coś takiego, że nakładasz na gifa animowanego np. białe tło za wyjątkiem literek i literki się animują? zmartwię cię oznacza to również rozłożenie tła na klatki i wstawienie literek na każdej klatce a potem skompilowanie do animowanego gifa.
zawsze możesz się nie zgodzić z opinią autora tego postu.
Avatar użytkownika
juniorMale
V.I.P.
V.I.P.
 
Posty: 1446
Dołączył(a): 2008-06-22, 11:07:52
Lokalizacja: Łódź
Podziękował : 0 razy
Otrzymał podziękowań: 4 razy

Re: Wyświetlanie wygenerowanej grafiki.

Postprzez privace » 2008-12-05, 22:32:57

Dobra, to na przykładzie takich generatorów:
http://www.pimpmyspace.org/myspaceglittertext.php wykorzystuje skrypt działający podobnie do tego podanego na początku i generujący kod z adresami pojedynczych literek:
Kod: Zaznacz cały
<a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/p.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/r.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/i.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/v.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/a.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/c.gif" border="0" alt="glitter text" /></a><a href="http://www.pimpmyspace.org/myspaceglittertext.php"><img src="http://m3.pimpmyspace.org/cursors/l/5/e.gif" border="0" alt="glitter text" /></a> <a href="http://www.pimpmyspace.org"><img src="http://m3.pimpmyspace.org/cursors/pmyspace.gif" alt="myspace" style="position:absolute; left:0px; top: 0px;" border="0"></a>

ObrazekObrazekObrazekObrazekObrazekObrazekObrazek
to samo na
http://www.glittermaker.com/
w efekcie jeden obrazek z kodem:
Kod: Zaznacz cały
[url=http://www.GlitterMaker.com/][img=http://www.glittermaker.com/temp-images/2/341/glitter-sparkle-122850836916238.gif[/url]

Obrazek
z użyciem czcionek i dodatkowo wybieranej warstwy gif:
http://www.glitterfy.com/glitter-words.php
Kod: Zaznacz cały
[url=http://www.glitterfy.com/][img]http://img34.glitterfy.com/340/glitterfy142132T972D32.gif[/img][/url]

Obrazek

Widać różnicę? Wszystko jedno jaką metodą, chodzi o efekt: krótki kod do skopiowania i JEDEN obrazek.
W moim obiektywie
Hobby lalkowe

privaceFemale
V.I.P.
V.I.P.
 
Posty: 7315
Dołączył(a): 2006-09-10, 19:11:58
Podziękował : 0 razy
Otrzymał podziękowań: 0 razy


  • Inne

Powrót do Programowanie

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 gości