Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
witajcie Koledzy
na pewno ktoś z tym walczył a zarazem na pewno jest to proste, googlam trochę ale nie natrafian na rozwiazanie (no tak, mogę skorzystać z imagemagicka ale może nie muszę, może moge przy GD zostać)
mam sobie taki skrypcik php:
http://graffi.us/fora/DUG/gd/t1.txt
i daje on:
http://graffi.us/fora/DUG/gd/t1.php
oraz taki skrypcik:
http://graffi.us/fora/DUG/gd/t.txt
i odpowiednio jego wynik:
http://graffi.us/fora/DUG/gd/t.php
oba są troche złe :(
a mianowicie, ten pierwszy nie jest przeźroczysty odpowiednio
a ten drugi jest przeźroczysty podczas rysowania (bo ten termometr jest przeźroczysty) ale już wynik wygenerowany jest zły
co poprawiać aby termometr był przeźroczysty, aby rtęć narysowana była pod termometrem i aby sam obrazek w wyniku był też przeźroczysty (ale zamotałem :P )
obrazki składowe z których jest to rysowane to:
http://graffi.us/fora/DUG/gd/img/termometr.png
Offline
narysowałem se ImageMagickiem :P
jakby ktoś chciał to:
<?php date_default_timezone_set('Europe/Berlin'); $image = new Imagick(); $image->newImage(70, 280, 'none'); $image->setImageFormat('png'); $termometr = new Imagick('img/termometr.png'); $rtec = new Imagick('img/rtec_zielona.png'); $temp=_wyjete_z_bazy_ ; $zero=143; $wysokoscSlupka = abs($temp*2.2); if ($temp > 0) { $pozycja0 = $zero - $wysokoscSlupka; $wysokoscSlupka+=80; $textX=12; } else { $pozycja0 = $zero + $wysokoscSlupka; $wysokoscSlupka+=(65 - $wysokoscSlupka); $textX=8; } $temperatura = new Imagick(); $temperatura->newImage(30, $wysokoscSlupka, new ImagickPixel("rgb(104, 191, 49)")); // rgba(r, g, b, a); $image->compositeImage($temperatura, $temperatura->getImageCompose(), 20, $pozycja0); $image->compositeImage($termometr, $termometr->getImageCompose(), 0, 0); $draw = new ImagickDraw(); $draw->setFillColor('black'); $draw->setFont('fonts/Arial_Black.ttf'); $draw->setFontSize(12); $image->annotateImage($draw, $textX, 248, 0, $temp.'°C'); if (isset($_GET['base64'])) { ob_start(); echo $image; $contents = ob_get_contents(); ob_end_clean(); echo base64_encode($contents); } else { header('Content-type: image/png'); echo $image; } ?>
Ostatnio edytowany przez Graffi (2015-10-02 13:30:21)
Offline
Time (s) | Query |
---|---|
0.00009 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00115 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.138.124.28' WHERE u.id=1 |
0.00068 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.138.124.28', 1732372959) |
0.00021 | SELECT * FROM punbb_online WHERE logged<1732372659 |
0.00077 | DELETE FROM punbb_online WHERE ident='3.143.218.115' |
0.00030 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=27769 AND t.moved_to IS NULL |
0.00037 | SELECT search_for, replace_with FROM punbb_censoring |
0.00116 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=27769 ORDER BY p.id LIMIT 0,25 |
0.00089 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27769 |
Total query time: 0.00566 s |