You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/usr/bin/php5
  2. <?php
  3. /*
  4. * truecolor truecolor canvas features
  5. * Copyright (c) 2008 Benjamin C. Wiley Sittler <bsittler@gmail.com>
  6. *
  7. * This file is a Php port of "examples/truecolor.c"
  8. * which is:
  9. * Copyright (c) 2006 Sam Hocevar <sam@zoy.org>
  10. * All Rights Reserved
  11. *
  12. * $Id$
  13. *
  14. * This program is free software. It comes without any warranty, to
  15. * the extent permitted by applicable law. You can redistribute it
  16. * and/or modify it under the terms of the Do What The Fuck You Want
  17. * To Public License, Version 2, as published by Sam Hocevar. See
  18. * http://sam.zoy.org/wtfpl/COPYING for more details.
  19. */
  20. if (php_sapi_name() != "cli") {
  21. die("You have to run this program with php-cli!\n");
  22. }
  23. $cv = caca_create_canvas(32, 16);
  24. if(!$cv) {
  25. die("Failed to create canvas\n");
  26. }
  27. $dp = caca_create_display($cv);
  28. if(!$dp) {
  29. die("Failed to create display\n");
  30. }
  31. for($y = 0; $y < 16; $y++)
  32. for($x = 0; $x < 16; $x++)
  33. {
  34. $bgcolor = 0xff00 | ($y << 4) | $x;
  35. $fgcolor = 0xf000 | ((15 - $y) << 4) | ((15 - $x) << 8);
  36. caca_set_color_argb($cv, $fgcolor, $bgcolor);
  37. caca_put_str($cv, $x * 2, $y, "CA");
  38. }
  39. caca_set_color_ansi($cv, CACA_WHITE, CACA_LIGHTBLUE);
  40. caca_put_str($cv, 2, 1, " truecolor libcaca ");
  41. caca_refresh_display($dp);
  42. caca_get_event($dp, CACA_EVENT_KEY_PRESS, -1);
  43. ?>