90b20127a4b93feea05b5d2ddd6d39f2702ad1f0
[unifont.git] / src / hexdraw
1 #!/usr/bin/perl -p
2 #
3 # Copyright (C) 1998, 2013 Roman Czyborra
4 #
5 # LICENSE:
6 #
7 #    This program is free software: you can redistribute it and/or modify
8 #    it under the terms of the GNU General Public License as published by
9 #    the Free Software Foundation, either version 2 of the License, or
10 #    (at your option) any later version.
11 #  
12 #    This program is distributed in the hope that it will be useful,
13 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
15 #    GNU General Public License for more details.
16 #  
17 #    You should have received a copy of the GNU General Public License
18 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
19 #
20
21 sub unpack { 
22         local ($_) = @_;
23         $_ = unpack ("B*", pack ("H*", $_));
24         $width=length($_)/16;
25         s/(.{$width})/\t$1\n/g;
26         y/01/-#/;
27         $_;
28 };
29
30 sub pack { 
31         local ($_) = @_; 
32         y/-#/01/;
33         $_= unpack ("H*", pack ("B*", $_));
34         y/a-f/A-F/;
35         $_;
36 }
37
38 s/([0-9A-F]{64})/&unpack($1)/ie || 
39 s/([0-9A-F]{32})/&unpack($1)/ie ||
40 s/\t([-#]+)\n/&pack($1)/e;