Moduł Text::Wrap

Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowa

O czym to jest

Text::Wrap to moduł do formatowania akapitów. Udostępnia on parę metod, dosłownie parę.

Metody

Text::Wrap::wrap() Formatuje jednorazowo jeden akapit, dzieli wiersze na granicy wyrazów. Jako argumenty podajemy:

$initial_tab - prefiks dla pierwszej linii akapitu

$subsequent_tab - prefiks dla reszty linii

@tekst - tekst do formatowania.

Text::Wrap::fill() Działa jak wrap() z tą różnicą, że formatuje kilka paragrafów na koncu zwracając je połączone w jeden tekst,

aby zasygnalizować metodzie gdzie chcemy rozpocząć nowy akapit, należy w tym miejscu umieścić "\n" i zaraz po nim biały znak.

Przykłady

use Text::Wrap; $tab[0]="Tekst przeznaczony do formatowania, przy użyciu modułu Text::Wrap"; $tab[1]=" 2 Tekst przeznaczony do formatowania, przy użyciu modułu Text::Wrap"; $Text::Wrap::columns=20; print wrap(" ","", @tab);

Rezultat

  Tekst

przeznaczony do

formatowania,przy

użyciu modułu

Text::Wrap 2

Tekst przeznaczony

do formatowania,

przy użyciu modułu

Text::Wrap

use Text::Wrap; $tab[0]="Tekst przeznaczony do formatowania, przy użyciu modułu Text::Wrap"; $tab[1]=" 2 Tekst przeznaczony do formatowania, przy użyciu modułu Text::Wrap"; $Text::Wrap::columns=20; print fill(" ","", @tab);

Dzięki wstawieniu spacji na początku drugiego elementu tablicy, uzyskamy w tym miejscu akapit (wrap() nie zwróci na to uwagii).

Jeśli dodatkowo w dowolnym miejscu tekstu wstawimy np. "\n " (\n+), to fill zlamie tekst w tym miejscu.

Rezultat

  Tekst

przeznaczony do

formatowania,przy

użyciu modułu

Text::Wrap

  2 Tekst

przeznaczony do

formatowania, przy

użyciu modułu

Text::Wrap

W Text::Wrap działanie metod modyfikują zmienne takie jak:

-break = ':' teraz dwukropek będzie oznaczał koniec słowa w tekście

-columns = 20 spowoduje podzial tekstu na linie o długości co najwyżej 20 znaków

-separator = '|' spowoduje separowanie wierszy znaczkiem '|' a nie \n

Jest jeszcze jedna zmienna $huge, której działanie określa działanie wrap(), fill() dla słów dłuższych niż, wartość zmiennej columns.

Przykład

use Text::Wrap qw(wrap, $columns, $huge); $columns=20;

$huge='wrap'; # wszystko po staremu po 20 znakach dlugie slowo zostanie złamane $huge='die'; # jeśli słowo będzie dłuższe niż 20 znaków wywołane zostanie die $huge='overflow'; # jeśli słowo będzie dłuższe niż 20 znaków, mimo wszystko zostanie wypisane w jednej linii

Autor modułu

David Muir Sharnoff with help from Tim Pierce and many many others

Gdzie na Cpan'ie: http://search.cpan.org/~muir/Text-Tabs+Wrap-2006.1117/lib/Text/Wrap.pm

Autor opracowania

Autor: L.L.

Email: llisak@manta.univ.gda.pl

Uniwersytet Gdański - Instytut Informatyki - Strona domowa - Perl - Wyklady
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.