Linux ns1.utparral.edu.mx 6.8.0-79-generic #79~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 15 16:54:53 UTC 2 x86_64
Apache/2.4.58 (Unix) OpenSSL/1.1.1w PHP/8.2.12 mod_perl/2.0.12 Perl/v5.34.1
: 10.10.1.9 | : 10.10.1.254
Cant Read [ /etc/named.conf ]
daemon
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
README
+ Create Folder
+ Create File
/
usr /
share /
doc /
libcairo-perl /
examples /
png /
[ HOME SHELL ]
Name
Size
Permission
Action
bevels.pl
6
KB
-rw-r--r--
caps_joins.pl
1.41
KB
-rw-r--r--
hering.pl
1.15
KB
-rw-r--r--
outline.pl
2.07
KB
-rw-r--r--
README
165
B
-rw-r--r--
snapping.pl
9.08
KB
-rw-r--r--
spiral.pl
895
B
-rw-r--r--
spline-pipeline.pl
2.46
KB
-rw-r--r--
splines_tolerance.pl
1018
B
-rw-r--r--
star_and_ring.pl
4.62
KB
-rw-r--r--
stars.pl
1.06
KB
-rw-r--r--
text.pl
3.12
KB
-rw-r--r--
text-rotate.pl
1.85
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : text.pl
#!/usr/bin/perl use strict; use warnings; use utf8; use Cairo; use constant { WIDTH => 450, HEIGHT => 600, TEXT => 'hëllø, wôrld', NUM_GLYPHS => 10, M_PI => 4 * atan2(1, 1), }; sub box_text { my ($cr, $utf8, $x, $y) = @_; $cr->save; my $extents = $cr->text_extents ($utf8); my $line_width = $cr->get_line_width; $cr->rectangle ($x + $extents->{x_bearing} - $line_width, $y + $extents->{y_bearing} - $line_width, $extents->{width} + 2 * $line_width, $extents->{height} + 2 *$line_width); $cr->stroke; $cr->move_to ($x, $y); $cr->show_text ($utf8); $cr->move_to ($x, $y); $cr->text_path ($utf8); $cr->set_source_rgb (1, 0, 0); $cr->set_line_width (1.0); $cr->stroke; $cr->restore; } sub box_glyphs { my ($cr, $x, $y, @glyphs) = @_; $cr->save; my $extents = $cr->glyph_extents (@glyphs); my $line_width = $cr->get_line_width; $cr->rectangle ($x + $extents->{x_bearing} - $line_width, $y + $extents->{y_bearing} - $line_width, $extents->{width} + 2 * $line_width, $extents->{height} + 2 * $line_width); $cr->stroke; foreach my $glyph (@glyphs) { $glyph->{x} += $x; $glyph->{y} += $y; } $cr->show_glyphs (@glyphs); $cr->glyph_path (@glyphs); $cr->set_source_rgb (1, 0, 0); $cr->set_line_width (1.0); $cr->stroke; foreach my $glyph (@glyphs) { $glyph->{x} -= $x; $glyph->{y} -= $y; } $cr->restore; } { my $surface = Cairo::ImageSurface->create ('argb32', WIDTH, HEIGHT); my $cr = Cairo::Context->create ($surface); $cr->set_source_rgb (0, 0, 0); $cr->set_line_width (2.0); $cr->save; $cr->rectangle (0, 0, WIDTH, HEIGHT); $cr->set_source_rgba (0, 0, 0, 0); $cr->set_operator ('source'); $cr->fill; $cr->restore; $cr->select_font_face ('sans', 'normal', 'normal'); $cr->set_font_size (40); if (1) { my $matrix = Cairo::Matrix->init_scale (40, -40); $cr->set_font_matrix ($matrix); $cr->scale (1, -1); $cr->translate (0, - HEIGHT); } my $font_extents = $cr->font_extents; my $height = $font_extents->{height}; my @glyphs = (); my $dx = 0; my $dy = 0; foreach (0 .. NUM_GLYPHS - 1) { my $glyph = { index => $_ + 4, x => $dx, y => $dy }; my $extents = $cr->glyph_extents ($glyph); $dx += $extents->{x_advance}; $dy += $extents->{y_advance}; push @glyphs, $glyph; } box_text ($cr, TEXT, 10, $height); $cr->translate (0, $height); $cr->save; { $cr->translate (10, $height); $cr->rotate (10 * M_PI / 180); box_text ($cr, TEXT, 0, 0); } $cr->restore; $cr->translate (0, 2 * $height); $cr->save; { my $matrix = Cairo::Matrix->init_identity; $matrix->scale (40, -40); $matrix->rotate (-10 * M_PI / 180); $cr->set_font_matrix ($matrix); box_text ($cr, TEXT, 10, $height); } $cr->restore; $cr->translate (0, 2 * $height); box_glyphs ($cr, 10, $height, @glyphs); $cr->translate (10, 2 * $height); $cr->save; { $cr->rotate (10 * M_PI / 180); box_glyphs ($cr, 0, 0, @glyphs); } $cr->restore; $cr->translate (0, $height); foreach (0 .. NUM_GLYPHS - 1) { $glyphs[$_]->{y} += $_ * 5; } box_glyphs ($cr, 10, $height, @glyphs); $surface->write_to_png ('text.png'); }
Close