NAME

UML::PlantUML::Encoder - Provides PlantUML Language's Encoding in Perl

Encodes PlantUML Diagram Text using the PlantUML Encoding Standard described at http://plantuml.com/text-encoding

VERSION

Version 0.03

SYNOPSIS

use UML::PlantUML::Encoder qw(encode_p);

my $encoded = encode_p(qq{
   Alice -> Bob: Authentication Request
   Bob --> Alice: Authentication Response
});

print "\nhttp://www.plantuml.com/plantuml/uml/$encoded";
print "\nhttp://www.plantuml.com/plantuml/png/$encoded";
print "\nhttp://www.plantuml.com/plantuml/svg/$encoded";
print "\nhttp://www.plantuml.com/plantuml/txt/$encoded";

# Output
http://www.plantuml.com/plantuml/uml/~169NZKe00nvpCv5G5NJi5f_maAmN7qfACrBoIpEJ4aipyF8MWrCBIrE8IBgXQe185NQ1Ii1uiYeiBylEAKy6g0HPp7700
http://www.plantuml.com/plantuml/png/~169NZKe00nvpCv5G5NJi5f_maAmN7qfACrBoIpEJ4aipyF8MWrCBIrE8IBgXQe185NQ1Ii1uiYeiBylEAKy6g0HPp7700
http://www.plantuml.com/plantuml/svg/~169NZKe00nvpCv5G5NJi5f_maAmN7qfACrBoIpEJ4aipyF8MWrCBIrE8IBgXQe185NQ1Ii1uiYeiBylEAKy6g0HPp7700
http://www.plantuml.com/plantuml/txt/~169NZKe00nvpCv5G5NJi5f_maAmN7qfACrBoIpEJ4aipyF8MWrCBIrE8IBgXQe185NQ1Ii1uiYeiBylEAKy6g0HPp7700

EXPORT

The only Subroutine that this module exports is encode_p

SUBROUTINES/METHODS

utf8_encode

Encoded in UTF-8

_compress_with_deflate

Compressed using Deflate algorithm

encode6bit

Transform to String of characters that contains only digits, letters, underscore and minus character

append3bytes

Transform adjacent bytes

encode64

Reencoded in ASCII using a transformation close to base64

add_header_huffman

To Indicate that this is Huffman Encoding add an header ~1.

encode_p

Encodes diagram text descriptions

AUTHOR

Rangana Sudesha Withanage, <rwi at cpan.org>

BUGS

Please report any bugs or feature requests to bug-uml-plantuml-encoder at rt.cpan.org, or through the web interface at https://rt.cpan.org/NoAuth/ReportBug.html?Queue=UML-PlantUML-Encoder. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc UML::PlantUML::Encoder

You can also look for information at:

LICENSE AND COPYRIGHT

This software is copyright (c) 2019 by Rangana Sudesha Withanage.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.