Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Pel-> tworzenie danych Exif
Radeqq
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 2
Dołączył: 10.05.2008

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


Do zapisu danych Exif w jpeg znalazłem PEL, przykład zapisu z tej strony - pozwolę sobie zacytować:

  1.  
  2. function loadwritedesc($file, $input_text, $input_text2, $input_text3){
  3.  $jpeg = new PelJpeg();
  4.  $tifff = $tiff=getBytes();
  5.  $jpeg->loadFile($file);
  6.  $app1 = $jpeg->getSection(PelJpegMarker::APP1);
  7.  $tiff = $app1->getTiff();
  8.  $ifd0 = $tiff->getIfd();
  9.  $exif = $ifd0->getSubIfd(PelTag::EXIF_IFD_POINTER);
  10.  // create and overwrite image_description tag and write the text
  11.   $describer = new PelEntryAscii(PelTag::XP_TITLE, $input_text);
  12.   $ifd0->addEntry($describer);
  13.   file_put_contents($file, $jpeg->getBytes());
  14.  
  15. }


XP_TITLE ładnie tworzy tytuł zdjęcia widoczny w Windowsie. I tu pojawia się problem, ponieważ tytuł tworzy tylko wtedy jeśli zdjęcie zostało zrobione np. aparatem lub istnieją już jakieś dane Exfif (czyt. sami je wpiszemy). Natomiast jeśli zdjęcie zostało utworzone w PHP ( imagecreatefromjpeg($zdjecie); ) to (prawdopodobnie) dane Exif nie istnieją i skrypt wywala błąd:
Cytat
Fatal error: Call to a member function getTiff() on a non-object in...
- nie mam pojęcia jak zadeklarować dane Exif

W manualu znalazłem coś w tym stylu:
Cytat
getBytes (line 157)

Produce bytes for the Exif data.
return: bytes representing this object.
string getBytes ()
ale nie mam pojęcia czy to jest to i jak tego użyć. Proszę o pomoc, dziękuję.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Zerknąłem na stronę i muszę Cię rozczarować. Ta funkcja konwertuje obiekt PEL do ciągu bajtów, dzięki czemu można obrazek wyświetlić. Nie modyfikuje ona exif.

Nie masz jednak co się martwić... Radze Ci się przyjrzeć czemuś innemu...
http://pl2.php.net/manual/en/function.iptcembed.php
Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 02:27