search
ANSI to HTML5 library
<?php
namespace SensioLabs\AnsiConverter\Tests;
use SensioLabs\AnsiConverter\AnsiToHtmlConverter;
class AnsiToHtmlConverterTest extends \PHPUnit_Framework_TestCase
{
    /**
     * @dataProvider getConvertData
     */
    public function testConvert($expected, $input)
    {
        $converter = new AnsiToHtmlConverter();
        $this->assertEquals($expected, $converter->convert($input));
    }
    public function getConvertData()
    {
        return array(
            // text is escaped
            array('<span style="background-color: black; color: white">foo <br /></span>', 'foo <br />'),
            // newlines are preserved
            array("<span style=\"background-color: black; color: white\">foo\nbar</span>", "foo\nbar"),
            // backspaces
            array('<span style="background-color: black; color: white">foo   </span>', "foobar\x08\x08\x08   "),
            array('<span style="background-color: black; color: white">foo</span><span style="background-color: black; color: white">   </span>', "foob\e[31;41ma\e[0mr\x08\x08\x08   "),
            // color
            array('<span style="background-color: darkred; color: darkred">foo</span>', "\e[31;41mfoo\e[0m"),
            // color with [m as a termination (equivalent to [0m])
            array('<span style="background-color: darkred; color: darkred">foo</span>', "\e[31;41mfoo\e[m"),
            // bright color
            array('<span style="background-color: red; color: red">foo</span>', "\e[31;41;1mfoo\e[0m"),
            // carriage returns
            array('<span style="background-color: black; color: white">foobar</span>', "foo\rbar\rfoobar"),
            // underline
            array('<span style="background-color: black; color: white; text-decoration: underline">foo</span>', "\e[4mfoo\e[0m"),
            // non valid unicode codepoints substitution (only available with PHP >= 5.4)
            PHP_VERSION_ID < 50400 ?: array('<span style="background-color: black; color: white">foo '."\xEF\xBF\xBD".'</span>', "foo \xF4\xFF\xFF\xFF"),
        );
    }
}

ANSI is a character code. In order to enable the computer to support more languages, 1 byte in the range of 0x00~0x7f is usually used to represent 1 English character. Anything outside this range is encoded using 0x80~0xFFFF, which is extended ASCII encoding.

HTML is Hypertext Markup Language, an application under Standard Universal Markup Language. "Hypertext" means that the page can contain pictures, links, and even non-text elements such as music and programs. The structure of hypertext markup language includes a "head" part (English: Head) and a "body" part (English


Disclaimer

All resources on this site are contributed by netizens or reprinted by major download sites. Please check the integrity of the software yourself! All resources on this site are for learning reference only. Please do not use them for commercial purposes. Otherwise, you will be responsible for all consequences! If there is any infringement, please contact us to delete it. Contact information: admin@php.cn

Related Article

How to Successfully Integrate the Unirest C   Library into Visual Studio 2012?How to Successfully Integrate the Unirest C Library into Visual Studio 2012?

20Dec2024

How to Integrate External Libraries into Visual Studio 2012Including libraries into Visual Studio 2012 projects allows developers to leverage the...

How to Create and Use a C   Dynamic Shared Library on Linux?How to Create and Use a C Dynamic Shared Library on Linux?

08Dec2024

C Dynamic Shared Library on LinuxDynamic shared libraries (DSLs), also known as shared libraries or shared objects, offer the capability to...

How to Display Imported Library Versions in Golang Code?How to Display Imported Library Versions in Golang Code?

02Nov2024

Retrieving Module Versions within Golang CodeIn software development, displaying version information for imported libraries can provide valuable...

How to Create a Static Library from Multiple Other Static Libraries?How to Create a Static Library from Multiple Other Static Libraries?

17Dec2024

Creating a Static Library That Links to Other Static LibrariesWhen building a static library that relies on dependencies from multiple other...

Is there a simple and lightweight CSS library that can be directly applied to HTML5 web pages? No need for complicated CSS libraries. _html/css_WEB-ITnoseIs there a simple and lightweight CSS library that can be directly applied to HTML5 web pages? No need for complicated CSS libraries. _html/css_WEB-ITnose

24Jun2016

Is there a simple and lightweight CSS library that can be directly applied to HTML5 web pages? No need for complicated CSS libraries.

How Do I Link Static Libraries That Depend on Other Static Libraries?How Do I Link Static Libraries That Depend on Other Static Libraries?

13Dec2024

Linking Static Libraries to Other Static Libraries: A Comprehensive ApproachStatic libraries provide a convenient mechanism to package reusable...

See all articles