Avatar billede hoppe11 Nybegynder
29. juli 2009 - 22:45 Der er 10 kommentarer og
1 løsning

streame output fra imagemagick

jeg har nu siddet og kigget på en masse eksempler på kommandoer til imagemagick, men synes ikke at finde noget hvor man streamer et billede?

alt det jeg har fundet gemmes output'et i et dir!?

jeg tænker på

image.php hvor der sendes en header med den pågældende mimetype
Avatar billede repox Seniormester
29. juli 2009 - 23:15 #1
Dit spørgsmål giver ingen mening.
imagemagick er et konverteringsværktøj som arbejder på fysisk eksisterende filer (hvadenten disse er midlertidige eller ej).
imagemagick har i sig selv intet med streaming at gøre.

Hvad med at forklare hvad du ønsker at opnå med din 'image.php'?
Avatar billede hoppe11 Nybegynder
29. juli 2009 - 23:28 #2
jeg skal lave thumbnails af billeder, men har ikke lyst til at gemme dem på serveren..
Avatar billede repox Seniormester
29. juli 2009 - 23:39 #3
Så må du bruge midlertidige filer. Det kan du eksempelvis gøre via tempnam().

<?php

    $tempFile = tempnam("/tmp", uniqid());

    $cmd = "convert billede.png -resize ".$tempFile;
    exec($cmd);

    header("Content-Type: image/png");
    echo file_get_contents($tempFile);
    exit;

?>
Avatar billede hoppe11 Nybegynder
30. juli 2009 - 00:35 #4
ok tak :)

smid et svar

men du foretrækker også imagemagick frem for GDlib selvom det er til små thumbnails som ikke behøver være så rene?

- og hvad med eksekveringstiden? GD vs. imagemagick til "små" opgaver?
Avatar billede repox Seniormester
30. juli 2009 - 00:55 #5
gdlib har jeg ikke rodet med i flere år.
selvom gdlib er relativt nemt til små opgaver, så har det sine begrænsninger - særligt i forbindelse med brugen af hukommelse.
imagemagick har den fordel at du kan behandle dine billeder med mere kontrol og du er ikke afhængig af opsætningen af PHP (medmindre safe mode er slået til, men altså, hvem har efterhånden det).

imagemagick eksekveres via CLI - det kan resourcemæssigt have sine fordele hvis du vil måle tid, men det er i princippet ikke noget du behøver at bekymre dig om.
Avatar billede hoppe11 Nybegynder
30. juli 2009 - 00:58 #6
tak for svaret :)
Avatar billede hoppe11 Nybegynder
30. juli 2009 - 18:03 #7
jeg har forsøgt at angive -quality i kommandoen, men synes ikke jeg kan få det til at virke!?

det er måske ikke muligt at angive hvor god kvalitet man vil have billederne?
Avatar billede repox Seniormester
30. juli 2009 - 21:05 #8
Prøv lige at give et eksempel på den linie du vil eksekvere?
Avatar billede hoppe11 Nybegynder
31. juli 2009 - 03:28 #9
convert pic.jpg -quality 50% -resize 100x100 pic.jpg
Avatar billede repox Seniormester
31. juli 2009 - 07:30 #10
Kigger man i dokumentationen kan ser det ikke ud til at % skal angives.

http://www.imagemagick.org/script/command-line-options.php#quality

du bør angive det i stil med:
[code]convert pic.jpg -quality 50 -resize 100x100 pic.jpg [/code]

Standard er sat til 85.
Avatar billede hoppe11 Nybegynder
31. juli 2009 - 12:17 #11
jeg må have forvekslet det med scale :)

tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester