diff options
author | Lars Knoll <lars.knoll@nokia.com> | 2011-06-17 15:37:37 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@nokia.com> | 2011-06-20 12:50:16 +0200 |
commit | 8ffbdae179ea91f5d9524ec4768990994a4ce3fb (patch) | |
tree | 0a25bbc027a0d629b7b71a677d353adef5f63c4c | |
parent | 813139f4f5bd78ed16577a3ae214b2cb91ef5170 (diff) |
remove postscript related files
We don't support postscript in Qt 5 anymore
Reviewed-by: Gunnar
-rwxr-xr-x | src/gui/painting/makepsheader.pl | 195 | ||||
-rw-r--r-- | src/gui/painting/qpsprinter.agl | 452 | ||||
-rw-r--r-- | src/gui/painting/qpsprinter.ps | 449 |
3 files changed, 0 insertions, 1096 deletions
diff --git a/src/gui/painting/makepsheader.pl b/src/gui/painting/makepsheader.pl deleted file mode 100755 index 267c183606..0000000000 --- a/src/gui/painting/makepsheader.pl +++ /dev/null @@ -1,195 +0,0 @@ -#!/usr/bin/perl -############################################################################# -## -## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -## All rights reserved. -## Contact: Nokia Corporation (qt-info@nokia.com) -## -## This file is part of the QtGui module of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL$ -## GNU Lesser General Public License Usage -## This file may be used under the terms of the GNU Lesser General Public -## License version 2.1 as published by the Free Software Foundation and -## appearing in the file LICENSE.LGPL included in the packaging of this -## file. Please review the following information to ensure the GNU Lesser -## General Public License version 2.1 requirements will be met: -## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -## -## In addition, as a special exception, Nokia gives you certain additional -## rights. These rights are described in the Nokia Qt LGPL Exception -## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -## -## GNU General Public License Usage -## Alternatively, this file may be used under the terms of the GNU General -## Public License version 3.0 as published by the Free Software Foundation -## and appearing in the file LICENSE.GPL included in the packaging of this -## file. Please review the following information to ensure the GNU General -## Public License version 3.0 requirements will be met: -## http://www.gnu.org/copyleft/gpl.html. -## -## Other Usage -## Alternatively, this file may be used in accordance with the terms and -## conditions contained in a signed written agreement between you and Nokia. -## -## -## -## -## -## $QT_END_LICENSE$ -## -############################################################################# - -open(INPUT, 'qpsprinter.ps') - or die "Can't open qpsprinter.ps"; - -$dontcompress = 1; -while(<INPUT>) { - $line = $_; - chomp $line; - if ( /ENDUNCOMPRESS/ ) { - $dontcompress = 0; - } - $line =~ s/%.*$//; - $line = $line; - if ( $dontcompress eq 1 ) { - push(@uncompressed, $line); - } else { - push(@lines, $line); - } -# print "$line\n"; -} - -$uc = join(" ", @uncompressed); -$uc =~ s,\t+, ,g; -$uc=~ s, +, ,g; - -$h = join(" ", @lines); -$h =~ s,\t+, ,g; -$h =~ s, +, ,g; -$h = $h.' '; - -# now compress as much as possible -$h =~ s/ bind def / BD /g; -$h =~ s/ dup dup / d2 /g; -$h =~ s/ exch def / ED /g; -$h =~ s/ setfont / F /g; -$h =~ s/ rlineto / RL /g; -$h =~ s/ newpath / n /g; -$h =~ s/ currentmatrix / CM /g; -$h =~ s/ setmatrix / SM /g; -$h =~ s/ translate / TR /g; -$h =~ s/ setdash / SD /g; -$h =~ s/ aload pop setrgbcolor / SC /g; -$h =~ s/ currentfile read pop / CR /g; -$h =~ s/ index / i /g; -$h =~ s/ bitshift / bs /g; -$h =~ s/ setcolorspace / scs /g; -$h =~ s/ dict dup begin / DB /g; -$h =~ s/ end def / DE /g; -$h =~ s/ ifelse / ie /g; - -# PDF compatible naming -$h =~ s/ setlinewidth / w /g; -$h =~ s/ setdash / d /g; - -$h =~ s/ lineto / l /g; -$h =~ s/ moveto / m /g; -$h =~ s/ curveto / c /g; -$h =~ s/ closepath / h /g; -$h =~ s/ clip / W /g; -$h =~ s/ eoclip / W* /g; - -$h =~ s/ gsave / gs /g; -$h =~ s/ grestore / gr /g; - -# add the uncompressed part of the header before -$h = $uc.' '.$h; - - - -#print $h; - -# wordwrap at col 76 -@head = split(' ', $h); -$line = shift @head; -while( @head ) { - $token = shift @head; - chomp $token; -# print "\nl=$l, len=$len, token=$token."; - $newline = $line.' '.$token; - $newline =~ s, /,/,g; - $newline =~ s, \{,\{,g; - $newline =~ s, \},\},g; - $newline =~ s, \[,\[,g; - $newline =~ s, \],\],g; - $newline =~ s,\{ ,\{,g; - $newline =~ s,\} ,\},g; - $newline =~ s,\[ ,\[,g; - $newline =~ s,\] ,\],g; - if ( length( $newline ) > 76 ) { -# print "\nline=$line\n"; - $header = $header."\n\"".$line."\\n\""; - $newline = $token; - } - $line = $newline; -} -$header = $header."\n\"".$line."\\n\""; - - -print "static const char *const ps_header ="; -print $header.";\n\n"; - -close(INPUT); -exit; - -open(INPUT, 'qpsprinter.agl') - or die "Can't open qpsprinter.ps"; - -print "static const char * const agl =\n"; - -$str = "\""; -$string =""; -$i = 0; -while(<INPUT>) { - $line = $_; - chomp $line; - $line =~ s/#.*//; - if(length($line) ne 0) { - $num = $line; - $name = $line; - $num =~ s/,.*//; - $name =~ s/.*, \"//; - $name =~ s/\".*//; - push(@qchar, $num); - push(@index, $i); - if(length($str.$name) > 76) { - $str = $str."\"\n"; - $string = $string.$str; - $str = "\""; - } - $str = $str.$name."\\0"; - $i += length($name)+1; - } -} - -print $string.";\n\n"; - -print "static const struct { quint16 u; quint16 index; } unicodetoglyph[] = {\n "; - -$loop = 0; -while( @qchar ) { - $loop = $loop + 1; - $ch = shift @qchar; - $i = shift @index; - print "{".$ch.", ".$i."}"; - if($ch ne "0xFFFF") { - print ", "; - } - if(!($loop % 4)) { - print "\n "; - } -}; - -print "\n};\n\n"; - diff --git a/src/gui/painting/qpsprinter.agl b/src/gui/painting/qpsprinter.agl deleted file mode 100644 index 137b64c53b..0000000000 --- a/src/gui/painting/qpsprinter.agl +++ /dev/null @@ -1,452 +0,0 @@ -# the next table is derived from a list provided by Adobe on its web -# server: http://partners.adobe.com/asn/developer/typeforum/glyphlist.txt - -# the start of the header comment: -# -# Name: Adobe Glyph List -# Table version: 1.2 -# Date: 22 Oct 1998 -# -# Description: -# -# The Adobe Glyph List (AGL) list relates Unicode values (UVs) to glyph -# names, and should be used only as described in the document "Unicode and -# Glyph Names," at -# http://partners.adobe.com:80/asn/developer/type/unicodegn.html -# -# IMPORTANT NOTE: -# the list contains glyphs in the private use area of unicode. -# These should get removed when regenerating the glyphlist. -# -# also 0 should be mapped to .notdef -# -# grep '^[0-9A-F][0-9A-F][0-9A-F][0-9A-F];' < /tmp/glyphlist.txt | sed -e 's/;/, "/' -e 's-;-" }, // -' -e 's/^/ { 0x/' | sort -# -0x0000, ".notdef" -0x0020, "space" # SPACE -0x0021, "exclam" # EXCLAMATION MARK -0x0022, "quotedbl" # QUOTATION MARK -0x0023, "numbersign" # NUMBER SIGN -0x0024, "dollar" # DOLLAR SIGN -0x0025, "percent" # PERCENT SIGN -0x0026, "ampersand" # AMPERSAND -0x0027, "quotesingle" # APOSTROPHE -0x0028, "parenleft" # LEFT PARENTHESIS -0x0029, "parenright" # RIGHT PARENTHESIS -0x002A, "asterisk" # ASTERISK -0x002B, "plus" # PLUS SIGN -0x002C, "comma" # COMMA -0x002D, "hyphen" # HYPHEN-MINUS -0x002E, "period" # FULL STOP -0x002F, "slash" # SOLIDUS -0x0030, "zero" # DIGIT ZERO -0x0031, "one" # DIGIT ONE -0x0032, "two" # DIGIT TWO -0x0033, "three" # DIGIT THREE -0x0034, "four" # DIGIT FOUR -0x0035, "five" # DIGIT FIVE -0x0036, "six" # DIGIT SIX -0x0037, "seven" # DIGIT SEVEN -0x0038, "eight" # DIGIT EIGHT -0x0039, "nine" # DIGIT NINE -0x003A, "colon" # COLON -0x003B, "semicolon" # SEMICOLON -0x003C, "less" # LESS-THAN SIGN -0x003D, "equal" # EQUALS SIGN -0x003E, "greater" # GREATER-THAN SIGN -0x003F, "question" # QUESTION MARK -0x0040, "at" # COMMERCIAL AT -0x0041, "A" # LATIN CAPITAL LETTER A -0x0042, "B" # LATIN CAPITAL LETTER B -0x0043, "C" # LATIN CAPITAL LETTER C -0x0044, "D" # LATIN CAPITAL LETTER D -0x0045, "E" # LATIN CAPITAL LETTER E -0x0046, "F" # LATIN CAPITAL LETTER F -0x0047, "G" # LATIN CAPITAL LETTER G -0x0048, "H" # LATIN CAPITAL LETTER H -0x0049, "I" # LATIN CAPITAL LETTER I -0x004A, "J" # LATIN CAPITAL LETTER J -0x004B, "K" # LATIN CAPITAL LETTER K -0x004C, "L" # LATIN CAPITAL LETTER L -0x004D, "M" # LATIN CAPITAL LETTER M -0x004E, "N" # LATIN CAPITAL LETTER N -0x004F, "O" # LATIN CAPITAL LETTER O -0x0050, "P" # LATIN CAPITAL LETTER P -0x0051, "Q" # LATIN CAPITAL LETTER Q -0x0052, "R" # LATIN CAPITAL LETTER R -0x0053, "S" # LATIN CAPITAL LETTER S -0x0054, "T" # LATIN CAPITAL LETTER T -0x0055, "U" # LATIN CAPITAL LETTER U -0x0056, "V" # LATIN CAPITAL LETTER V -0x0057, "W" # LATIN CAPITAL LETTER W -0x0058, "X" # LATIN CAPITAL LETTER X -0x0059, "Y" # LATIN CAPITAL LETTER Y -0x005A, "Z" # LATIN CAPITAL LETTER Z -0x005B, "bracketleft" # LEFT SQUARE BRACKET -0x005C, "backslash" # REVERSE SOLIDUS -0x005D, "bracketright" # RIGHT SQUARE BRACKET -0x005E, "asciicircum" # CIRCUMFLEX ACCENT -0x005F, "underscore" # LOW LINE -0x0060, "grave" # GRAVE ACCENT -0x0061, "a" # LATIN SMALL LETTER A -0x0062, "b" # LATIN SMALL LETTER B -0x0063, "c" # LATIN SMALL LETTER C -0x0064, "d" # LATIN SMALL LETTER D -0x0065, "e" # LATIN SMALL LETTER E -0x0066, "f" # LATIN SMALL LETTER F -0x0067, "g" # LATIN SMALL LETTER G -0x0068, "h" # LATIN SMALL LETTER H -0x0069, "i" # LATIN SMALL LETTER I -0x006A, "j" # LATIN SMALL LETTER J -0x006B, "k" # LATIN SMALL LETTER K -0x006C, "l" # LATIN SMALL LETTER L -0x006D, "m" # LATIN SMALL LETTER M -0x006E, "n" # LATIN SMALL LETTER N -0x006F, "o" # LATIN SMALL LETTER O -0x0070, "p" # LATIN SMALL LETTER P -0x0071, "q" # LATIN SMALL LETTER Q -0x0072, "r" # LATIN SMALL LETTER R -0x0073, "s" # LATIN SMALL LETTER S -0x0074, "t" # LATIN SMALL LETTER T -0x0075, "u" # LATIN SMALL LETTER U -0x0076, "v" # LATIN SMALL LETTER V -0x0077, "w" # LATIN SMALL LETTER W -0x0078, "x" # LATIN SMALL LETTER X -0x0079, "y" # LATIN SMALL LETTER Y -0x007A, "z" # LATIN SMALL LETTER Z -0x007B, "braceleft" # LEFT CURLY BRACKET -0x007C, "bar" # VERTICAL LINE -0x007D, "braceright" # RIGHT CURLY BRACKET -0x007E, "asciitilde" # TILDE -0x00A0, "space" # NO-BREAK SPACE;Duplicate -0x00A1, "exclamdown" # INVERTED EXCLAMATION MARK -0x00A2, "cent" # CENT SIGN -0x00A3, "sterling" # POUND SIGN -0x00A4, "currency" # CURRENCY SIGN -0x00A5, "yen" # YEN SIGN -0x00A6, "brokenbar" # BROKEN BAR -0x00A7, "section" # SECTION SIGN -0x00A8, "dieresis" # DIAERESIS -0x00A9, "copyright" # COPYRIGHT SIGN -0x00AA, "ordfeminine" # FEMININE ORDINAL INDICATOR -0x00AB, "guillemotleft" # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -0x00AC, "logicalnot" # NOT SIGN -0x00AD, "hyphen" # SOFT HYPHEN;Duplicate -0x00AE, "registered" # REGISTERED SIGN -0x00AF, "macron" # MACRON -0x00B0, "degree" # DEGREE SIGN -0x00B1, "plusminus" # PLUS-MINUS SIGN -0x00B2, "twosuperior" # SUPERSCRIPT TWO -0x00B3, "threesuperior" # SUPERSCRIPT THREE -0x00B4, "acute" # ACUTE ACCENT -0x00B5, "mu" # MICRO SIGN -0x00B6, "paragraph" # PILCROW SIGN -0x00B7, "periodcentered" # MIDDLE DOT -0x00B8, "cedilla" # CEDILLA -0x00B9, "onesuperior" # SUPERSCRIPT ONE -0x00BA, "ordmasculine" # MASCULINE ORDINAL INDICATOR -0x00BB, "guillemotright" # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -0x00BC, "onequarter" # VULGAR FRACTION ONE QUARTER -0x00BD, "onehalf" # VULGAR FRACTION ONE HALF -0x00BE, "threequarters" # VULGAR FRACTION THREE QUARTERS -0x00BF, "questiondown" # INVERTED QUESTION MARK -0x00C0, "Agrave" # LATIN CAPITAL LETTER A WITH GRAVE -0x00C1, "Aacute" # LATIN CAPITAL LETTER A WITH ACUTE -0x00C2, "Acircumflex" # LATIN CAPITAL LETTER A WITH CIRCUMFLEX -0x00C3, "Atilde" # LATIN CAPITAL LETTER A WITH TILDE -0x00C4, "Adieresis" # LATIN CAPITAL LETTER A WITH DIAERESIS -0x00C5, "Aring" # LATIN CAPITAL LETTER A WITH RING ABOVE -0x00C6, "AE" # LATIN CAPITAL LETTER AE -0x00C7, "Ccedilla" # LATIN CAPITAL LETTER C WITH CEDILLA -0x00C8, "Egrave" # LATIN CAPITAL LETTER E WITH GRAVE -0x00C9, "Eacute" # LATIN CAPITAL LETTER E WITH ACUTE -0x00CA, "Ecircumflex" # LATIN CAPITAL LETTER E WITH CIRCUMFLEX -0x00CB, "Edieresis" # LATIN CAPITAL LETTER E WITH DIAERESIS -0x00CC, "Igrave" # LATIN CAPITAL LETTER I WITH GRAVE -0x00CD, "Iacute" # LATIN CAPITAL LETTER I WITH ACUTE -0x00CE, "Icircumflex" # LATIN CAPITAL LETTER I WITH CIRCUMFLEX -0x00CF, "Idieresis" # LATIN CAPITAL LETTER I WITH DIAERESIS -0x00D0, "Eth" # LATIN CAPITAL LETTER ETH -0x00D1, "Ntilde" # LATIN CAPITAL LETTER N WITH TILDE -0x00D2, "Ograve" # LATIN CAPITAL LETTER O WITH GRAVE -0x00D3, "Oacute" # LATIN CAPITAL LETTER O WITH ACUTE -0x00D4, "Ocircumflex" # LATIN CAPITAL LETTER O WITH CIRCUMFLEX -0x00D5, "Otilde" # LATIN CAPITAL LETTER O WITH TILDE -0x00D6, "Odieresis" # LATIN CAPITAL LETTER O WITH DIAERESIS -0x00D7, "multiply" # MULTIPLICATION SIGN -0x00D8, "Oslash" # LATIN CAPITAL LETTER O WITH STROKE -0x00D9, "Ugrave" # LATIN CAPITAL LETTER U WITH GRAVE -0x00DA, "Uacute" # LATIN CAPITAL LETTER U WITH ACUTE -0x00DB, "Ucircumflex" # LATIN CAPITAL LETTER U WITH CIRCUMFLEX -0x00DC, "Udieresis" # LATIN CAPITAL LETTER U WITH DIAERESIS -0x00DD, "Yacute" # LATIN CAPITAL LETTER Y WITH ACUTE -0x00DE, "Thorn" # LATIN CAPITAL LETTER THORN -0x00DF, "germandbls" # LATIN SMALL LETTER SHARP S -0x00E0, "agrave" # LATIN SMALL LETTER A WITH GRAVE -0x00E1, "aacute" # LATIN SMALL LETTER A WITH ACUTE -0x00E2, "acircumflex" # LATIN SMALL LETTER A WITH CIRCUMFLEX -0x00E3, "atilde" # LATIN SMALL LETTER A WITH TILDE -0x00E4, "adieresis" # LATIN SMALL LETTER A WITH DIAERESIS -0x00E5, "aring" # LATIN SMALL LETTER A WITH RING ABOVE -0x00E6, "ae" # LATIN SMALL LETTER AE -0x00E7, "ccedilla" # LATIN SMALL LETTER C WITH CEDILLA -0x00E8, "egrave" # LATIN SMALL LETTER E WITH GRAVE -0x00E9, "eacute" # LATIN SMALL LETTER E WITH ACUTE -0x00EA, "ecircumflex" # LATIN SMALL LETTER E WITH CIRCUMFLEX -0x00EB, "edieresis" # LATIN SMALL LETTER E WITH DIAERESIS -0x00EC, "igrave" # LATIN SMALL LETTER I WITH GRAVE -0x00ED, "iacute" # LATIN SMALL LETTER I WITH ACUTE -0x00EE, "icircumflex" # LATIN SMALL LETTER I WITH CIRCUMFLEX -0x00EF, "idieresis" # LATIN SMALL LETTER I WITH DIAERESIS -0x00F0, "eth" # LATIN SMALL LETTER ETH -0x00F1, "ntilde" # LATIN SMALL LETTER N WITH TILDE -0x00F2, "ograve" # LATIN SMALL LETTER O WITH GRAVE -0x00F3, "oacute" # LATIN SMALL LETTER O WITH ACUTE -0x00F4, "ocircumflex" # LATIN SMALL LETTER O WITH CIRCUMFLEX -0x00F5, "otilde" # LATIN SMALL LETTER O WITH TILDE -0x00F6, "odieresis" # LATIN SMALL LETTER O WITH DIAERESIS -0x00F7, "divide" # DIVISION SIGN -0x00F8, "oslash" # LATIN SMALL LETTER O WITH STROKE -0x00F9, "ugrave" # LATIN SMALL LETTER U WITH GRAVE -0x00FA, "uacute" # LATIN SMALL LETTER U WITH ACUTE -0x00FB, "ucircumflex" # LATIN SMALL LETTER U WITH CIRCUMFLEX -0x00FC, "udieresis" # LATIN SMALL LETTER U WITH DIAERESIS -0x00FD, "yacute" # LATIN SMALL LETTER Y WITH ACUTE -0x00FE, "thorn" # LATIN SMALL LETTER THORN -0x00FF, "ydieresis" # LATIN SMALL LETTER Y WITH DIAERESIS -0x0100, "Amacron" # LATIN CAPITAL LETTER A WITH MACRON -0x0101, "amacron" # LATIN SMALL LETTER A WITH MACRON -0x0102, "Abreve" # LATIN CAPITAL LETTER A WITH BREVE -0x0103, "abreve" # LATIN SMALL LETTER A WITH BREVE -0x0104, "Aogonek" # LATIN CAPITAL LETTER A WITH OGONEK -0x0105, "aogonek" # LATIN SMALL LETTER A WITH OGONEK -0x0106, "Cacute" # LATIN CAPITAL LETTER C WITH ACUTE -0x0107, "cacute" # LATIN SMALL LETTER C WITH ACUTE -0x0108, "Ccircumflex" # LATIN CAPITAL LETTER C WITH CIRCUMFLEX -0x0109, "ccircumflex" # LATIN SMALL LETTER C WITH CIRCUMFLEX -0x010A, "Cdotaccent" # LATIN CAPITAL LETTER C WITH DOT ABOVE -0x010B, "cdotaccent" # LATIN SMALL LETTER C WITH DOT ABOVE -0x010C, "Ccaron" # LATIN CAPITAL LETTER C WITH CARON -0x010D, "ccaron" # LATIN SMALL LETTER C WITH CARON -0x010E, "Dcaron" # LATIN CAPITAL LETTER D WITH CARON -0x010F, "dcaron" # LATIN SMALL LETTER D WITH CARON -0x0110, "Dcroat" # LATIN CAPITAL LETTER D WITH STROKE -0x0111, "dcroat" # LATIN SMALL LETTER D WITH STROKE -0x0112, "Emacron" # LATIN CAPITAL LETTER E WITH MACRON -0x0113, "emacron" # LATIN SMALL LETTER E WITH MACRON -0x0114, "Ebreve" # LATIN CAPITAL LETTER E WITH BREVE -0x0115, "ebreve" # LATIN SMALL LETTER E WITH BREVE -0x0116, "Edotaccent" # LATIN CAPITAL LETTER E WITH DOT ABOVE -0x0117, "edotaccent" # LATIN SMALL LETTER E WITH DOT ABOVE -0x0118, "Eogonek" # LATIN CAPITAL LETTER E WITH OGONEK -0x0119, "eogonek" # LATIN SMALL LETTER E WITH OGONEK -0x011A, "Ecaron" # LATIN CAPITAL LETTER E WITH CARON -0x011B, "ecaron" # LATIN SMALL LETTER E WITH CARON -0x011C, "Gcircumflex" # LATIN CAPITAL LETTER G WITH CIRCUMFLEX -0x011D, "gcircumflex" # LATIN SMALL LETTER G WITH CIRCUMFLEX -0x011E, "Gbreve" # LATIN CAPITAL LETTER G WITH BREVE -0x011F, "gbreve" # LATIN SMALL LETTER G WITH BREVE -0x0120, "Gdotaccent" # LATIN CAPITAL LETTER G WITH DOT ABOVE -0x0121, "gdotaccent" # LATIN SMALL LETTER G WITH DOT ABOVE -0x0122, "Gcommaaccent" # LATIN CAPITAL LETTER G WITH CEDILLA -0x0123, "gcommaaccent" # LATIN SMALL LETTER G WITH CEDILLA -0x0124, "Hcircumflex" # LATIN CAPITAL LETTER H WITH CIRCUMFLEX -0x0125, "hcircumflex" # LATIN SMALL LETTER H WITH CIRCUMFLEX -0x0126, "Hbar" # LATIN CAPITAL LETTER H WITH STROKE -0x0127, "hbar" # LATIN SMALL LETTER H WITH STROKE -0x0128, "Itilde" # LATIN CAPITAL LETTER I WITH TILDE -0x0129, "itilde" # LATIN SMALL LETTER I WITH TILDE -0x012A, "Imacron" # LATIN CAPITAL LETTER I WITH MACRON -0x012B, "imacron" # LATIN SMALL LETTER I WITH MACRON -0x012C, "Ibreve" # LATIN CAPITAL LETTER I WITH BREVE -0x012D, "ibreve" # LATIN SMALL LETTER I WITH BREVE -0x012E, "Iogonek" # LATIN CAPITAL LETTER I WITH OGONEK -0x012F, "iogonek" # LATIN SMALL LETTER I WITH OGONEK -0x0130, "Idotaccent" # LATIN CAPITAL LETTER I WITH DOT ABOVE -0x0131, "dotlessi" # LATIN SMALL LETTER DOTLESS I -0x0132, "IJ" # LATIN CAPITAL LIGATURE IJ -0x0133, "ij" # LATIN SMALL LIGATURE IJ -0x0134, "Jcircumflex" # LATIN CAPITAL LETTER J WITH CIRCUMFLEX -0x0135, "jcircumflex" # LATIN SMALL LETTER J WITH CIRCUMFLEX -0x0136, "Kcommaaccent" # LATIN CAPITAL LETTER K WITH CEDILLA -0x0137, "kcommaaccent" # LATIN SMALL LETTER K WITH CEDILLA -0x0138, "kgreenlandic" # LATIN SMALL LETTER KRA -0x0139, "Lacute" # LATIN CAPITAL LETTER L WITH ACUTE -0x013A, "lacute" # LATIN SMALL LETTER L WITH ACUTE -0x013B, "Lcommaaccent" # LATIN CAPITAL LETTER L WITH CEDILLA -0x013C, "lcommaaccent" # LATIN SMALL LETTER L WITH CEDILLA -0x013D, "Lcaron" # LATIN CAPITAL LETTER L WITH CARON -0x013E, "lcaron" # LATIN SMALL LETTER L WITH CARON -0x013F, "Ldot" # LATIN CAPITAL LETTER L WITH MIDDLE DOT -0x0140, "ldot" # LATIN SMALL LETTER L WITH MIDDLE DOT -0x0141, "Lslash" # LATIN CAPITAL LETTER L WITH STROKE -0x0142, "lslash" # LATIN SMALL LETTER L WITH STROKE -0x0143, "Nacute" # LATIN CAPITAL LETTER N WITH ACUTE -0x0144, "nacute" # LATIN SMALL LETTER N WITH ACUTE -0x0145, "Ncommaaccent" # LATIN CAPITAL LETTER N WITH CEDILLA -0x0146, "ncommaaccent" # LATIN SMALL LETTER N WITH CEDILLA -0x0147, "Ncaron" # LATIN CAPITAL LETTER N WITH CARON -0x0148, "ncaron" # LATIN SMALL LETTER N WITH CARON -0x0149, "napostrophe" # LATIN SMALL LETTER N PRECEDED BY APOSTROPHE -0x014A, "Eng" # LATIN CAPITAL LETTER ENG -0x014B, "eng" # LATIN SMALL LETTER ENG -0x014C, "Omacron" # LATIN CAPITAL LETTER O WITH MACRON -0x014D, "omacron" # LATIN SMALL LETTER O WITH MACRON -0x014E, "Obreve" # LATIN CAPITAL LETTER O WITH BREVE -0x014F, "obreve" # LATIN SMALL LETTER O WITH BREVE -0x0150, "Ohungarumlaut" # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -0x0151, "ohungarumlaut" # LATIN SMALL LETTER O WITH DOUBLE ACUTE -0x0152, "OE" # LATIN CAPITAL LIGATURE OE -0x0153, "oe" # LATIN SMALL LIGATURE OE -0x0154, "Racute" # LATIN CAPITAL LETTER R WITH ACUTE -0x0155, "racute" # LATIN SMALL LETTER R WITH ACUTE -0x0156, "Rcommaaccent" # LATIN CAPITAL LETTER R WITH CEDILLA -0x0157, "rcommaaccent" # LATIN SMALL LETTER R WITH CEDILLA -0x0158, "Rcaron" # LATIN CAPITAL LETTER R WITH CARON -0x0159, "rcaron" # LATIN SMALL LETTER R WITH CARON -0x015A, "Sacute" # LATIN CAPITAL LETTER S WITH ACUTE -0x015B, "sacute" # LATIN SMALL LETTER S WITH ACUTE -0x015C, "Scircumflex" # LATIN CAPITAL LETTER S WITH CIRCUMFLEX -0x015D, "scircumflex" # LATIN SMALL LETTER S WITH CIRCUMFLEX -0x015E, "Scedilla" # LATIN CAPITAL LETTER S WITH CEDILLA -0x015F, "scedilla" # LATIN SMALL LETTER S WITH CEDILLA -0x0160, "Scaron" # LATIN CAPITAL LETTER S WITH CARON -0x0161, "scaron" # LATIN SMALL LETTER S WITH CARON -0x0164, "Tcaron" # LATIN CAPITAL LETTER T WITH CARON -0x0165, "tcaron" # LATIN SMALL LETTER T WITH CARON -0x0166, "Tbar" # LATIN CAPITAL LETTER T WITH STROKE -0x0167, "tbar" # LATIN SMALL LETTER T WITH STROKE -0x0168, "Utilde" # LATIN CAPITAL LETTER U WITH TILDE -0x0169, "utilde" # LATIN SMALL LETTER U WITH TILDE -0x016A, "Umacron" # LATIN CAPITAL LETTER U WITH MACRON -0x016B, "umacron" # LATIN SMALL LETTER U WITH MACRON -0x016C, "Ubreve" # LATIN CAPITAL LETTER U WITH BREVE -0x016D, "ubreve" # LATIN SMALL LETTER U WITH BREVE -0x016E, "Uring" # LATIN CAPITAL LETTER U WITH RING ABOVE -0x016F, "uring" # LATIN SMALL LETTER U WITH RING ABOVE -0x0170, "Uhungarumlaut" # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -0x0171, "uhungarumlaut" # LATIN SMALL LETTER U WITH DOUBLE ACUTE -0x0172, "Uogonek" # LATIN CAPITAL LETTER U WITH OGONEK -0x0173, "uogonek" # LATIN SMALL LETTER U WITH OGONEK -0x0174, "Wcircumflex" # LATIN CAPITAL LETTER W WITH CIRCUMFLEX -0x0175, "wcircumflex" # LATIN SMALL LETTER W WITH CIRCUMFLEX -0x0176, "Ycircumflex" # LATIN CAPITAL LETTER Y WITH CIRCUMFLEX -0x0177, "ycircumflex" # LATIN SMALL LETTER Y WITH CIRCUMFLEX -0x0178, "Ydieresis" # LATIN CAPITAL LETTER Y WITH DIAERESIS -0x0179, "Zacute" # LATIN CAPITAL LETTER Z WITH ACUTE -0x017A, "zacute" # LATIN SMALL LETTER Z WITH ACUTE -0x017B, "Zdotaccent" # LATIN CAPITAL LETTER Z WITH DOT ABOVE -0x017C, "zdotaccent" # LATIN SMALL LETTER Z WITH DOT ABOVE -0x017D, "Zcaron" # LATIN CAPITAL LETTER Z WITH CARON -0x017E, "zcaron" # LATIN SMALL LETTER Z WITH CARON -0x017F, "longs" # LATIN SMALL LETTER LONG S -0x0192, "florin" # LATIN SMALL LETTER F WITH HOOK -0x01A0, "Ohorn" # LATIN CAPITAL LETTER O WITH HORN -0x01A1, "ohorn" # LATIN SMALL LETTER O WITH HORN -0x01AF, "Uhorn" # LATIN CAPITAL LETTER U WITH HORN -0x01B0, "uhorn" # LATIN SMALL LETTER U WITH HORN -0x01E6, "Gcaron" # LATIN CAPITAL LETTER G WITH CARON -0x01E7, "gcaron" # LATIN SMALL LETTER G WITH CARON -0x01FA, "Aringacute" # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE -0x01FB, "aringacute" # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE -0x01FC, "AEacute" # LATIN CAPITAL LETTER AE WITH ACUTE -0x01FD, "aeacute" # LATIN SMALL LETTER AE WITH ACUTE -0x01FE, "Oslashacute" # LATIN CAPITAL LETTER O WITH STROKE AND ACUTE -0x01FF, "oslashacute" # LATIN SMALL LETTER O WITH STROKE AND ACUTE -0x0218, "Scommaaccent" # LATIN CAPITAL LETTER S WITH COMMA BELOW -0x0219, "scommaaccent" # LATIN SMALL LETTER S WITH COMMA BELOW -0x021A, "Tcommaaccent" # LATIN CAPITAL LETTER T WITH COMMA BELOW -0x021B, "tcommaaccent" # LATIN SMALL LETTER T WITH COMMA BELOW -0x02BC, "afii57929" # MODIFIER LETTER APOSTROPHE -0x02BD, "afii64937" # MODIFIER LETTER REVERSED COMMA -0x02C6, "circumflex" # MODIFIER LETTER CIRCUMFLEX ACCENT -0x02C7, "caron" # CARON -0x02D8, "breve" # BREVE -0x02D9, "dotaccent" # DOT ABOVE -0x02DA, "ring" # RING ABOVE -0x02DB, "ogonek" # OGONEK -0x02DC, "tilde" # SMALL TILDE -0x02DD, "hungarumlaut" # DOUBLE ACUTE ACCENT -0x0300, "gravecomb" # COMBINING GRAVE ACCENT -0x0301, "acutecomb" # COMBINING ACUTE ACCENT -0x0303, "tildecomb" # COMBINING TILDE -0x0309, "hookabovecomb" # COMBINING HOOK ABOVE -0x0323, "dotbelowcomb" # COMBINING DOT BELOW -0x0384, "tonos" # GREEK TONOS -0x0385, "dieresistonos" # GREEK DIALYTIKA TONOS -0x0386, "Alphatonos" # GREEK CAPITAL LETTER ALPHA WITH TONOS -0x0387, "anoteleia" # GREEK ANO TELEIA -0x0388, "Epsilontonos" # GREEK CAPITAL LETTER EPSILON WITH TONOS -0x0389, "Etatonos" # GREEK CAPITAL LETTER ETA WITH TONOS -0x038A, "Iotatonos" # GREEK CAPITAL LETTER IOTA WITH TONOS -0x038C, "Omicrontonos" # GREEK CAPITAL LETTER OMICRON WITH TONOS -0x038E, "Upsilontonos" # GREEK CAPITAL LETTER UPSILON WITH TONOS -0x038F, "Omegatonos" # GREEK CAPITAL LETTER OMEGA WITH TONOS -0x0390, "iotadieresistonos" # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS -0x0391, "Alpha" # GREEK CAPITAL LETTER ALPHA -0x0392, "Beta" # GREEK CAPITAL LETTER BETA -0x0393, "Gamma" # GREEK CAPITAL LETTER GAMMA -0x0394, "Delta" # GREEK CAPITAL LETTER DELTA -0x0395, "Epsilon" # GREEK CAPITAL LETTER EPSILON -0x0396, "Zeta" # GREEK CAPITAL LETTER ZETA -0x0397, "Eta" # GREEK CAPITAL LETTER ETA -0x0398, "Theta" # GREEK CAPITAL LETTER THETA -0x0399, "Iota" # GREEK CAPITAL LETTER IOTA -0x039A, "Kappa" # GREEK CAPITAL LETTER KAPPA -0x039B, "Lambda" # GREEK CAPITAL LETTER LAMDA -0x039C, "Mu" # GREEK CAPITAL LETTER MU -0x039D, "Nu" # GREEK CAPITAL LETTER NU -0x039E, "Xi" # GREEK CAPITAL LETTER XI -0x039F, "Omicron" # GREEK CAPITAL LETTER OMICRON -0x03A0, "Pi" # GREEK CAPITAL LETTER PI -0x03A1, "Rho" # GREEK CAPITAL LETTER RHO -0x03A3, "Sigma" # GREEK CAPITAL LETTER SIGMA -0x03A4, "Tau" # GREEK CAPITAL LETTER TAU -0x03A5, "Upsilon" # GREEK CAPITAL LETTER UPSILON -0x03A6, "Phi" # GREEK CAPITAL LETTER PHI -0x03A7, "Chi" # GREEK CAPITAL LETTER CHI -0x03A8, "Psi" # GREEK CAPITAL LETTER PSI -0x03A9, "Omega" # GREEK CAPITAL LETTER OMEGA -0x03AA, "Iotadieresis" # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA -0x03AB, "Upsilondieresis" # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA -0x03AC, "alphatonos" # GREEK SMALL LETTER ALPHA WITH TONOS -0x03AD, "epsilontonos" # GREEK SMALL LETTER EPSILON WITH TONOS -0x03AE, "etatonos" # GREEK SMALL LETTER ETA WITH TONOS -0x03AF, "iotatonos" # GREEK SMALL LETTER IOTA WITH TONOS -0x03B0, "upsilondieresistonos" # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS -0x03B1, "alpha" # GREEK SMALL LETTER ALPHA -0x03B2, "beta" # GREEK SMALL LETTER BETA -0x03B3, "gamma" # GREEK SMALL LETTER GAMMA -0x03B4, "delta" # GREEK SMALL LETTER DELTA -0x03B5, "epsilon" # GREEK SMALL LETTER EPSILON -0x03B6, "zeta" # GREEK SMALL LETTER ZETA -0x03B7, "eta" # GREEK SMALL LETTER ETA -0x03B8, "theta" # GREEK SMALL LETTER THETA -0x03B9, "iota" # GREEK SMALL LETTER IOTA -0x03BA, "kappa" # GREEK SMALL LETTER KAPPA -0x03BB, "lambda" # GREEK SMALL LETTER LAMDA -0x03BC, "mu" # GREEK SMALL LETTER MU;Duplicate -0x03BD, "nu" # GREEK SMALL LETTER NU -0x03BE, "xi" # GREEK SMALL LETTER XI -0x03BF, "omicron" # GREEK SMALL LETTER OMICRON -0x03C0, "pi" # GREEK SMALL LETTER PI -0x03C1, "rho" # GREEK SMALL LETTER RHO -0x03C2, "sigma1" # GREEK SMALL LETTER FINAL SIGMA -0x03C3, "sigma" # GREEK SMALL LETTER SIGMA -0x03C4, "tau" # GREEK SMALL LETTER TAU -0x03C5, "upsilon" # GREEK SMALL LETTER UPSILON -0x03C6, "phi" # GREEK SMALL LETTER PHI -0x03C7, "chi" # GREEK SMALL LETTER CHI -0x03C8, "psi" # GREEK SMALL LETTER PSI -0x03C9, "omega" # GREEK SMALL LETTER OMEGA -0x03CA, "iotadieresis" # GREEK SMALL LETTER IOTA WITH DIALYTIKA -0x03CB, "upsilondieresis" # GREEK SMALL LETTER UPSILON WITH DIALYTIKA -0x03CC, "omicrontonos" # GREEK SMALL LETTER OMICRON WITH TONOS -0x03CD, "upsilontonos" # GREEK SMALL LETTER UPSILON WITH TONOS -0x03CE, "omegatonos" # GREEK SMALL LETTER OMEGA WITH TONOS -0x03D1, "theta1" # GREEK THETA SYMBOL -0x03D2, "Upsilon1" # GREEK UPSILON WITH HOOK SYMBOL -0x03D5, "phi1" # GREEK PHI SYMBOL -0x03D6, "omega1" # GREEK PI SYMBOL -# end of stuff from glyphlist.txt -0xFFFF, "" diff --git a/src/gui/painting/qpsprinter.ps b/src/gui/painting/qpsprinter.ps deleted file mode 100644 index ef3f42970b..0000000000 --- a/src/gui/painting/qpsprinter.ps +++ /dev/null @@ -1,449 +0,0 @@ -% the postscript header we use for our qpsprinter in uncompressed and commented form. -% use the makepsheader perl script to generate a compressed version of this header -% you can then paste into qpsprinter.cpp -% -% some compression of the code is done by the makepsheader script, so we don't need to -% write too criptically here. - -/BD {bind def} bind def -/d2 {dup dup} BD -/ED {exch def} BD -/D0 {0 ED} BD - -/F {setfont} BD -/RL {rlineto} BD -/CM {currentmatrix} BD -/SM {setmatrix} BD -/TR {translate} BD -/SD {setdash} BD -/SC {aload pop setrgbcolor} BD -/CR {currentfile read pop} BD -/i {index} BD -/scs {setcolorspace} BD -/DB {dict dup begin} BD -/DE {end def} BD -/ie {ifelse} BD -/gs {gsave} BD -/gr {grestore} BD - -% these use PDF syntax -/w {setlinewidth} BD -/d {setdash} BD -/J {setlinecap} BD -/j {setlinejoin} BD -/scn {3 array astore /BCol exch def} BD -/SCN {3 array astore /PCol exch def} BD -/cm {6 array astore concat} BD - -/m {moveto} BD -/l {lineto} BD -/c {curveto} BD -/h {closepath} BD - -/W {clip} BD -/W* {eoclip} BD -/n {newpath} BD -% ENDUNCOMPRESSED: Warning: leave this line in. -% Everything before this line will be left untouched by the compression - -/q {gsave 10 dict begin} BD -/Q {end grestore} BD - -% PDF operators -/re { % PDF re operator - 4 2 roll % w h x y - moveto % w h - dup % w h h - 0 exch rlineto % w h - exch 0 rlineto % h - 0 exch neg rlineto - closepath -} bind def - -/S { - gsave - PCol SC stroke - grestore - newpath -} BD - -% PDF text operators -/BT {gsave 10 dict begin /_m matrix currentmatrix def BCol SC} BD -/ET {end grestore} BD -/Tf { - /_fs exch def - findfont - [ _fs 0 0 _fs 0 0 ] - makefont - setfont -} BD -/Tm {6 array astore concat} BD -/Td {translate} BD -/Tj {0 0 moveto show} BD -/BDC {pop pop} BD -/EMC {} BD - -% old operators - -/BSt 0 def % brush style -/WFi false def % winding fill - -/BCol [ 1 1 1 ] def % brush color -/PCol [ 0 0 0 ] def % pen color -/BDArr [ % Brush dense patterns - 0.94 - 0.88 - 0.63 - 0.50 - 0.37 - 0.12 - 0.06 -] def - -% -- level3 true/false -/level3 { - /languagelevel where { - pop - languagelevel 3 ge - } { false } ifelse -} bind def - - -%% image drawing routines - -% defines for QCI -/QCIgray D0 /QCIcolor D0 /QCIindex D0 - -% this method prints color images if colorimage is available, otherwise -% converts the string to a grayscale image and uses the reular postscript image -% operator for printing. -% Arguments are the same as for the image operator: -% -% width height bits/sample matrix datasrc QCI - -/QCI { - /colorimage where { - pop - false 3 colorimage - }{ % the hard way, based on PD code by John Walker <kelvin@autodesk.com> - exec /QCIcolor exch def - /QCIgray QCIcolor length 3 idiv string def - 0 1 QCIcolor length 3 idiv 1 sub - { /QCIindex exch def - /_x QCIindex 3 mul def - QCIgray QCIindex - QCIcolor _x get 0.30 mul - QCIcolor _x 1 add get 0.59 mul - QCIcolor _x 2 add get 0.11 mul - add add cvi - put - } for - QCIgray image - } ifelse -} bind def - -% general image drawing routine, used from the postscript driver -% -% Draws images with and without mask with 1, 8 and 24(rgb) bits depth. -% -% width height matrix image 1|8|24 mask|false x y di -% -% width and height specify the width/height of the image, -% matrix a transformation matrix, image a procedure holding the image data -% (same for mask) and x/y an additional translation. -% -% ### should move the translation into the matrix!!! -/di -{ - gsave - translate - 1 index 1 eq { % bitmap - pop pop % get rid of mask and depth - false 3 1 roll % width height false matrix image - BCol SC - imagemask - } { - dup false ne { - % have a mask, see if we can use it - level3 - } { - false - } ifelse - - { - % languagelevel3, we can use image mask and dicts - - % store the image mask - /_ma exch def - % select colorspace according to 8|24 bit depth and set the decode array /dc - 8 eq { - /_dc [0 1] def - /DeviceGray - } { - /_dc [0 1 0 1 0 1] def - /DeviceRGB - } ifelse - setcolorspace - % the image data - /_im exch def - % transformation matrix - /_mt exch def - % width and height - /_h exch def - /_w exch def - % and the combined image dict - << - /ImageType 3 - % the image dict - /DataDict << - /ImageType 1 - /Width _w - /Height _h - /ImageMatrix _mt - /DataSource _im - /BitsPerComponent 8 - /Decode _dc - >> - % the mask dictionary - /MaskDict << - /ImageType 1 - /Width _w - /Height _h - /ImageMatrix _mt - /DataSource _ma - /BitsPerComponent 1 - /Decode [0 1] - >> - /InterleaveType 3 - >> - image - } { - pop % no mask or can't use it, get rid of it - 8 % width height image 8|24 8 matrix - 4 1 roll - 8 eq { % grayscale - image - } { %color - QCI - } ifelse - } ifelse - } ifelse - grestore -} bind def - - -/BF { % brush fill - gsave - BSt 1 eq % solid brush? - { - BCol SC - WFi { fill } { eofill } ifelse - } if - BSt 2 ge BSt 8 le and % dense pattern? - { - BDArr BSt 2 sub get /_sc exch def - % the following line scales the brush color according to the pattern. the higher the pattern the lighter the color. - BCol - { - 1. exch sub _sc mul 1. exch sub - } forall - 3 array astore - SC - WFi { fill } { eofill } ifelse - } if - BSt 9 ge BSt 14 le and % brush pattern? - { - WFi { clip } { eoclip } ifelse - pathbbox % left upper right lower - 3 index 3 index translate - 4 2 roll % right lower left upper - 3 2 roll % right left upper lower - exch % left right lower upper - sub /_h exch def - sub /_w exch def - BCol SC - 0.3 setlinewidth - newpath - BSt 9 eq BSt 11 eq or % horiz or cross pattern - { 0 4 _h - { dup 0 exch moveto _w exch lineto } for - } if - BSt 10 eq BSt 11 eq or % vert or cross pattern - { 0 4 _w - { dup 0 moveto _h lineto } for - } if - BSt 12 eq BSt 14 eq or % F-diag or diag cross - { _w _h gt - { 0 6 _w _h add - { dup 0 moveto _h sub _h lineto } for - } { 0 6 _w _h add - { dup 0 exch moveto _w sub _w exch lineto } for - } ifelse - } if - BSt 13 eq BSt 14 eq or % B-diag or diag cross - { _w _h gt - { 0 6 _w _h add - { dup _h moveto _h sub 0 lineto } for - } { 0 6 _w _h add - { dup _w exch moveto _w sub 0 exch lineto } for - } ifelse - } if - stroke - } if - BSt 15 eq - { - } if - BSt 24 eq % TexturePattern - { - } if - grestore -} bind def - -% more PDF operators -/f { /WFi true def BF newpath } bind def -/f* { /WFi false def BF newpath } bind def -/B { /WFi true def BF S newpath } bind def -/B* { /WFi false def BF S newpath } bind def - -%% start of page -/QI { - /C save def - pageinit - q - newpath -} bind def - -%% end of page -/QP { - Q % show page - C restore - showpage -} bind def - -% merges one key value pair into the page device dict -% -% key value SPD - -/SPD { - /setpagedevice where { - << 3 1 roll >> - setpagedevice - } { pop pop } ifelse -} bind def - - -% font handling - -/T1AddMapping { % basefont [glyphname ...] T1AddMapping - - 10 dict begin - /glyphs exch def - /fnt exch def - /current fnt /NumGlyphs get def - /CMap fnt /CMap get def - - 0 1 glyphs length 1 sub % 0 1 (num glyphs - 1) - { - glyphs exch get /gn exch def - - current dup % glyph_index glyph_index - 256 mod /min exch def % glyph_index - 256 idiv /maj exch def % - - CMap dup maj get dup % cmap cmap_maj cmap_maj - null eq { - pop 256 array - 0 1 255 {1 index exch /.notdef put} for - } if - dup % cmap cmap_maj cmap_maj - min gn put % cmap cmap_maj - maj exch put % - - - /current current 1 add def - } for - - fnt /CMap CMap put - fnt /NumGlyphs current put - end -} def - -/T1AddGlyphs { % basefont [glyphname charstring ...] T1AddGlyphs - - 10 dict begin - /glyphs exch def - /fnt exch def - /current fnt /NumGlyphs get def - /CMap fnt /CMap get def - /CharStrings fnt /CharStrings get def - - 0 1 glyphs length 2 idiv 1 sub % 0 1 (num glyphs - 1) - { - 2 mul dup - glyphs exch get /gn exch def - 1 add - glyphs exch get /cs exch def - - current dup % glyph_index glyph_index - 256 mod /min exch def % glyph_index - 256 idiv /maj exch def % - - CMap dup maj get dup % cmap cmap_maj cmap_maj - null eq { - pop 256 array - 0 1 255 {1 index exch /.notdef put} for - } if - dup % cmap cmap_maj cmap_maj - min gn put % cmap cmap_maj - maj exch put % - - - CharStrings gn cs put - /current current 1 add def - } for - - fnt /CharStrings CharStrings put - fnt /CMap CMap put - fnt /NumGlyphs current put - end -} def - - - -/StringAdd { % string1 string2 stringadd result - 1 index length 1 index length add - string - 3 1 roll - 2 index 0 3 index putinterval - 2 index 2 index length 2 index putinterval - pop pop -} def - - -/T1Setup { % fontname T1Setup - -10 dict begin - dup /FontName exch def - (-Base) StringAdd cvx cvn /Font exch def - /MaxPage Font /NumGlyphs get 1 sub 256 idiv def - - /FDepVector MaxPage 1 add array def - /Encoding MaxPage 1 add array def - - 0 1 MaxPage { - dup Encoding exch dup put - - - dup /Page exch def - FontName (-) StringAdd - exch - 20 string cvs StringAdd % page fontname - cvn - - Font 0 dict copy dup dup /CMap get - Page get - /Encoding exch put definefont - FDepVector exch Page exch put - } for - - FontName cvn << - /FontType 0 - /FMapType 2 - /FontMatrix[1 0 0 1 0 0] - /Encoding Encoding - /FDepVector FDepVector - >> definefont pop - end -} def - |