Changeset 3274 for libcaca


Ignore:
Timestamp:
Nov 4, 2008, 5:56:49 AM (11 years ago)
Author:
bsittler
Message:

PHPified

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/caca-php/examples/transform.php

    • Property svn:executable set to *
    r3273 r3274  
     1#!/usr/bin/php5
     2<?php
    13/*
    2  *  unicode       libcaca Unicode rendering test program
     4 *  transform       transformation test program
     5 *  Copyright (c) 2008 Benjamin C. Wiley Sittler <bsittler@gmail.com>
     6 *
     7 *  This file is a Php port of "examples/transform.c"
     8 *  which is:
    39 *  Copyright (c) 2006 Sam Hocevar <sam@zoy.org>
    410 *                All Rights Reserved
     
    1319 */
    1420
    15 #include "config.h"
    16 
    17 #if !defined(__KERNEL__)
    18 #   include <stdio.h>
    19 #   include <string.h>
    20 #endif
    21 
    22 #include "caca.h"
    23 
    24 static char const pig[] =
    25     ",--.   ,--.\n"
    26     "\\  /-~-\\  /\n"
    27     " )' o O `(\n"
    28     "(  ,---.  )\n"
    29     " `(_o_o_)'\n"
    30     "   )`-'(\n";
    31 
    32 static char const duck[] =
    33     "                ,~~.\n"
    34     "    __     ,   (  O )>\n"
    35     "___( o)>   )`~~'   (\n"
    36     "\\ <_. )   (  .__)   )\n"
    37     " `---'     `-.____,'\n";
    38 
    39 int main(int argc, char *argv[])
    40 {
    41     caca_canvas_t *cv, *image, *tmp, *sprite;
    42     caca_display_t *dp;
    43 
    44     cv = caca_create_canvas(0, 0);
    45     if(cv == NULL)
    46     {
    47         printf("Can't created canvas\n");
    48         return -1;
    49     }
    50     dp = caca_create_display(cv);
    51     if(dp == NULL)
    52     {
    53         printf("Can't create display\n");
    54         return -1;
    55     }
    56 
    57     image = caca_create_canvas(70, 6);
    58     tmp = caca_create_canvas(70, 6);
    59     sprite = caca_create_canvas(0, 0);
    60 
    61     caca_set_color_ansi(sprite, CACA_LIGHTMAGENTA, CACA_BLACK);
    62     caca_import_memory(sprite, pig, strlen(pig), "text");
    63     caca_blit(image, 55, 0, sprite, NULL);
    64 
    65     caca_set_color_ansi(sprite, CACA_LIGHTGREEN, CACA_BLACK);
    66     caca_import_memory(sprite, duck, strlen(duck), "text");
    67     caca_blit(image, 30, 1, sprite, NULL);
    68 
    69     caca_set_color_ansi(image, CACA_LIGHTCYAN, CACA_BLACK);
    70     caca_put_str(image, 1, 1, "hahaha mais vieux porc immonde !! [⽼ ⾗]");
    71     caca_set_color_ansi(image, CACA_LIGHTRED, CACA_BLACK);
    72     caca_put_char(image, 38, 1, '|');
    73 
    74     caca_set_color_ansi(image, CACA_YELLOW, CACA_BLACK);
    75     caca_put_str(image, 4, 2, "\\o\\ \\o| _o/ \\o_ |o/ /o/");
    76 
    77     caca_set_color_ansi(image, CACA_WHITE, CACA_LIGHTRED);
    78     caca_put_str(image, 7, 3, "▙▘▌▙▘▞▖▞▖▌ ▞▖▌ ▌▌");
    79     caca_put_str(image, 7, 4, "▛▖▌▛▖▚▘▚▘▚▖▚▘▚▖▖▖");
    80     caca_set_color_ansi(image, CACA_BLACK, CACA_LIGHTRED);
    81     caca_put_str(image, 4, 3, "▓▒░");
    82     caca_put_str(image, 4, 4, "▓▒░");
    83     caca_put_str(image, 24, 3, "░▒▓");
    84     caca_put_str(image, 24, 4, "░▒▓");
    85 
    86     /* Blit the transformed canvas onto the main canvas */
    87     caca_set_color_ansi(cv, CACA_WHITE, CACA_BLUE);
    88     caca_put_str(cv, 0, 0, "normal");
    89     caca_blit(cv, 10, 0, image, NULL);
    90 
    91     caca_put_str(cv, 0, 6, "flip");
    92     caca_blit(tmp, 0, 0, image, NULL);
    93     caca_flip(tmp);
    94     caca_blit(cv, 10, 6, tmp, NULL);
    95 
    96     caca_put_str(cv, 0, 12, "flop");
    97     caca_blit(tmp, 0, 0, image, NULL);
    98     caca_flop(tmp);
    99     caca_blit(cv, 10, 12, tmp, NULL);
    100 
    101     caca_put_str(cv, 0, 18, "rotate");
    102     caca_blit(tmp, 0, 0, image, NULL);
    103     caca_rotate_180(tmp);
    104     caca_blit(cv, 10, 18, tmp, NULL);
    105 
    106     caca_refresh_display(dp);
    107 
    108     caca_get_event(dp, CACA_EVENT_KEY_PRESS, NULL, -1);
    109 
    110     caca_free_display(dp);
    111     caca_free_canvas(tmp);
    112     caca_free_canvas(sprite);
    113     caca_free_canvas(image);
    114     caca_free_canvas(cv);
    115 
    116     return 0;
     21if (php_sapi_name() != "cli") {
     22        die("You have to run this program with php-cli!\n");
    11723}
    11824
     25$pig = (
     26        ",--.   ,--.\n" .
     27        "\\  /-~-\\  /\n" .
     28        " )' o O `(\n" .
     29        "(  ,---.  )\n" .
     30        " `(_o_o_)'\n" .
     31        "   )`-'(\n");
     32
     33$duck = (
     34        "                ,~~.\n" .
     35        "    __     ,   (  O )>\n" .
     36        "___( o)>   )`~~'   (\n" .
     37        "\\ <_. )   (  .__)   )\n" .
     38        " `---'     `-.____,'\n");
     39
     40$cv = caca_create_canvas(0, 0);
     41if(! $cv)
     42{
     43        die("Can't created canvas\n");
     44}
     45$dp = caca_create_display($cv);
     46if(! $dp)
     47{
     48        die("Can't create display\n");
     49}
     50
     51$image = caca_create_canvas(70, 6);
     52$tmp = caca_create_canvas(70, 6);
     53$sprite = caca_create_canvas(0, 0);
     54
     55caca_set_color_ansi($sprite, CACA_LIGHTMAGENTA, CACA_BLACK);
     56caca_import_string($sprite, $pig, "text");
     57caca_blit($image, 55, 0, $sprite);
     58
     59caca_set_color_ansi($sprite, CACA_LIGHTGREEN, CACA_BLACK);
     60caca_import_string($sprite, $duck, "text");
     61caca_blit($image, 30, 1, $sprite);
     62
     63caca_set_color_ansi($image, CACA_LIGHTCYAN, CACA_BLACK);
     64caca_put_str($image, 1, 1, "hahaha mais vieux porc immonde !! [⽼ ⾗]");
     65caca_set_color_ansi($image, CACA_LIGHTRED, CACA_BLACK);
     66caca_put_char($image, 38, 1, ord('|'));
     67
     68caca_set_color_ansi($image, CACA_YELLOW, CACA_BLACK);
     69caca_put_str($image, 4, 2, "\\o\\ \\o| _o/ \\o_ |o/ /o/");
     70
     71caca_set_color_ansi($image, CACA_WHITE, CACA_LIGHTRED);
     72caca_put_str($image, 7, 3, "▙▘▌▙▘▞▖▞▖▌ ▞▖▌ ▌▌");
     73caca_put_str($image, 7, 4, "▛▖▌▛▖▚▘▚▘▚▖▚▘▚▖▖▖");
     74caca_set_color_ansi($image, CACA_BLACK, CACA_LIGHTRED);
     75caca_put_str($image, 4, 3, "▓▒░");
     76caca_put_str($image, 4, 4, "▓▒░");
     77caca_put_str($image, 24, 3, "░▒▓");
     78caca_put_str($image, 24, 4, "░▒▓");
     79
     80/* Blit the transformed canvas onto the main canvas */
     81caca_set_color_ansi($cv, CACA_WHITE, CACA_BLUE);
     82caca_put_str($cv, 0, 0, "normal");
     83caca_blit($cv, 10, 0, $image);
     84
     85caca_put_str($cv, 0, 6, "flip");
     86caca_blit($tmp, 0, 0, $image);
     87caca_flip($tmp);
     88caca_blit($cv, 10, 6, $tmp);
     89
     90caca_put_str($cv, 0, 12, "flop");
     91caca_blit($tmp, 0, 0, $image);
     92caca_flop($tmp);
     93caca_blit($cv, 10, 12, $tmp);
     94
     95caca_put_str($cv, 0, 18, "rotate");
     96caca_blit($tmp, 0, 0, $image);
     97caca_rotate_180($tmp);
     98caca_blit($cv, 10, 18, $tmp);
     99
     100caca_refresh_display($dp);
     101
     102caca_get_event($dp, CACA_EVENT_KEY_PRESS, -1);
     103?>
Note: See TracChangeset for help on using the changeset viewer.