Template Toolkit: Модули: Template::Plugin::GD::Text::Wrap

Template Toolkit

(русская редакция)

[ Пособия ] [ Руководство ] [ Модули ] [ Библиотеки ] [ Утилиты ] [ Вопросы ] [ Релиз ] [ Perl-ресурсы ] Форум ]
 
Поиск
Template Toolkit | Модули | Template::Plugin::GD::Text::Wrap

Template::Plugin::GD::Text::Wrap

[ ◄ Template::Plugin::GD::Text::Align ] [ Template::Plugin::GD::Graph::lines ► ]
Перенос и выравнивание строк в картинках GD.

Оглавление

ОБЗОР

Индекс ] [ Модули ] [ Наверх ]

    [% USE align = GD.Text.Wrap(gd_image); %]

ПРИМЕРЫ

Индекс ] [ Модули ] [ Наверх ]

    [% FILTER null;
        USE gd  = GD.Image(200,400);
        USE gdc = GD.Constants;
        black = gd.colorAllocate(0,   0, 0);
        green = gd.colorAllocate(0, 255, 0);
        txt = "This is some long text. " | repeat(10);
        USE wrapbox = GD.Text.Wrap(gd,
         line_space  => 4,
         color       => green,
         text        => txt,
        );
        wrapbox.set_font(gdc.gdMediumBoldFont);
        wrapbox.set(align => 'center', width => 160);
        wrapbox.draw(20, 20);
        gd.png | stdout(1);
      END;
    -%]
    [% txt = BLOCK -%]
    Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
    sed diam nonummy nibh euismod tincidunt ut laoreet dolore
    magna aliquam erat volutpat.
    [% END -%]
    [% FILTER null;
        #
        # Этот пример следует примеру из GD::Text::Wrap, за исключением
        # того что мы создали вторую картинку, которая всего лишь копия
        # первой, в которой хранится окончательный текст, плюс рамка.
        #
        USE gd  = GD.Image(400,400);
        USE gdc = GD.Constants;
        green = gd.colorAllocate(0, 255, 0);
        blue  = gd.colorAllocate(0, 0, 255);
        USE wrapbox = GD.Text.Wrap(gd,
         line_space  => 4,
         color       => green,
         text        => txt,
        );
        wrapbox.set_font(gdc.gdMediumBoldFont);
        wrapbox.set(align => 'center', width => 140);
        rect = wrapbox.get_bounds(5, 5);
        x0 = rect.0;
        y0 = rect.1;
        x1 = rect.2 + 9;
        y1 = rect.3 + 9;
        gd.filledRectangle(0, 0, x1, y1, blue);
        gd.rectangle(0, 0, x1, y1, green);
        wrapbox.draw(x0, y0);
        nx = x1 + 1;
        ny = y1 + 1;
        USE gd2 = GD.Image(nx, ny);
        gd2.copy(gd, 0, 0, 0, 0, x1, y1);
        gd2.png | stdout(1);
       END;
    -%]

ОПИСАНИЕ

Индекс ] [ Модули ] [ Наверх ]

Плагин GD.Text.Wrap предоставляет интерфейс к модулю GD::Text::Wrap. Он позволяет выводить многострочный текст с переносами и выравниванием.

Более подробно смотри в GD::Text::Wrap. Смотри также описание плагина, позволяющего рисовать текст с различным выравниванием и ориентацией в Template::Plugin::GD::Text::Align.

АВТОР

Индекс ] [ Модули ] [ Наверх ]

Крейг Баррет (Craig Barratt <craig@arraycomm.com>)

Модуль GD::Text был написан Мартином Вербрюггеном (Martien Verbruggen).

ВЕРСИЯ

Индекс ] [ Модули ] [ Наверх ]

1.56, поставляется в составе Template Toolkit версии 2.14, дата релиза - 4 октября 2004.

АВТОРСКИЕ ПРАВА

Индекс ] [ Модули ] [ Наверх ]

Copyright (C) 2001 Craig Barratt <craig@arraycomm.com>

GD::Text is copyright 1999 Martien Verbruggen.

Этот модуль является свободно-распространяемым программным обеспечением; вы можете распространять и/или модифицировать его на тех же условиях, что и Perl.

СМОТРИ ТАКЖЕ

Индекс ] [ Модули ] [ Наверх ]