You've already forked linux-packaging-mono
Imported Upstream version 6.12.0.86
Former-commit-id: 7a84ce7d08c42c458ac8e74b27186ca863315d79
This commit is contained in:
parent
92747312ea
commit
0b380204a4
@ -1,413 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
// COMPLETE
|
||||
|
||||
using System.Collections;
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
internal class Charcode {
|
||||
#region Local Variables
|
||||
private StandardCharCode[] codes;
|
||||
private Hashtable reverse;
|
||||
private int size;
|
||||
#endregion // Local Variables
|
||||
|
||||
#region Cached Values
|
||||
static Charcode ansi_generic;
|
||||
#endregion
|
||||
|
||||
#region Public Constructors
|
||||
public Charcode() : this(256) {
|
||||
}
|
||||
|
||||
private Charcode(int size) {
|
||||
this.size = size;
|
||||
this.codes = new StandardCharCode[size];
|
||||
this.reverse = new Hashtable(size);
|
||||
|
||||
// No need to reinitialize array to its default value
|
||||
//for (int i = 0; i < size; i++) {
|
||||
// codes[i] = StandardCharCode.nothing;
|
||||
//}
|
||||
}
|
||||
#endregion // Public Constructors
|
||||
|
||||
#region Public Instance Properties
|
||||
public int this[StandardCharCode c] {
|
||||
get {
|
||||
object obj;
|
||||
|
||||
obj = reverse[c];
|
||||
if (obj != null) {
|
||||
return (int)obj;
|
||||
}
|
||||
for (int i = 0; i < size; i++) {
|
||||
if (codes[i] == c) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
public StandardCharCode this[int c] {
|
||||
get {
|
||||
if (c < 0 || c >= size) {
|
||||
return StandardCharCode.nothing;
|
||||
}
|
||||
|
||||
return codes[c];
|
||||
}
|
||||
|
||||
private set {
|
||||
if (c < 0 || c >= size) {
|
||||
return;
|
||||
}
|
||||
|
||||
codes[c] = value;
|
||||
reverse[value] = c;
|
||||
}
|
||||
}
|
||||
#endregion // Public Instance Properties
|
||||
|
||||
#region Public Instance Methods
|
||||
#endregion // Public Instance Methods
|
||||
|
||||
#region Public Static Methods
|
||||
public static Charcode AnsiGeneric {
|
||||
get {
|
||||
if (ansi_generic != null)
|
||||
return ansi_generic;
|
||||
|
||||
ansi_generic = new Charcode(256);
|
||||
|
||||
ansi_generic[0x06] = StandardCharCode.formula;
|
||||
ansi_generic[0x1e] = StandardCharCode.nobrkhyphen;
|
||||
ansi_generic[0x1f] = StandardCharCode.opthyphen;
|
||||
ansi_generic[' '] = StandardCharCode.space;
|
||||
ansi_generic['!'] = StandardCharCode.exclam;
|
||||
ansi_generic['"'] = StandardCharCode.quotedbl;
|
||||
ansi_generic['#'] = StandardCharCode.numbersign;
|
||||
ansi_generic['$'] = StandardCharCode.dollar;
|
||||
ansi_generic['%'] = StandardCharCode.percent;
|
||||
ansi_generic['&'] = StandardCharCode.ampersand;
|
||||
ansi_generic['\\'] = StandardCharCode.quoteright;
|
||||
ansi_generic['('] = StandardCharCode.parenleft;
|
||||
ansi_generic[')'] = StandardCharCode.parenright;
|
||||
ansi_generic['*'] = StandardCharCode.asterisk;
|
||||
ansi_generic['+'] = StandardCharCode.plus;
|
||||
ansi_generic[','] = StandardCharCode.comma;
|
||||
ansi_generic['-'] = StandardCharCode.hyphen;
|
||||
ansi_generic['.'] = StandardCharCode.period;
|
||||
ansi_generic['/'] = StandardCharCode.slash;
|
||||
ansi_generic['0'] = StandardCharCode.zero;
|
||||
ansi_generic['1'] = StandardCharCode.one;
|
||||
ansi_generic['2'] = StandardCharCode.two;
|
||||
ansi_generic['3'] = StandardCharCode.three;
|
||||
ansi_generic['4'] = StandardCharCode.four;
|
||||
ansi_generic['5'] = StandardCharCode.five;
|
||||
ansi_generic['6'] = StandardCharCode.six;
|
||||
ansi_generic['7'] = StandardCharCode.seven;
|
||||
ansi_generic['8'] = StandardCharCode.eight;
|
||||
ansi_generic['9'] = StandardCharCode.nine;
|
||||
ansi_generic[':'] = StandardCharCode.colon;
|
||||
ansi_generic[';'] = StandardCharCode.semicolon;
|
||||
ansi_generic['<'] = StandardCharCode.less;
|
||||
ansi_generic['='] = StandardCharCode.equal;
|
||||
ansi_generic['>'] = StandardCharCode.greater;
|
||||
ansi_generic['?'] = StandardCharCode.question;
|
||||
ansi_generic['@'] = StandardCharCode.at;
|
||||
ansi_generic['A'] = StandardCharCode.A;
|
||||
ansi_generic['B'] = StandardCharCode.B;
|
||||
ansi_generic['C'] = StandardCharCode.C;
|
||||
ansi_generic['D'] = StandardCharCode.D;
|
||||
ansi_generic['E'] = StandardCharCode.E;
|
||||
ansi_generic['F'] = StandardCharCode.F;
|
||||
ansi_generic['G'] = StandardCharCode.G;
|
||||
ansi_generic['H'] = StandardCharCode.H;
|
||||
ansi_generic['I'] = StandardCharCode.I;
|
||||
ansi_generic['J'] = StandardCharCode.J;
|
||||
ansi_generic['K'] = StandardCharCode.K;
|
||||
ansi_generic['L'] = StandardCharCode.L;
|
||||
ansi_generic['M'] = StandardCharCode.M;
|
||||
ansi_generic['N'] = StandardCharCode.N;
|
||||
ansi_generic['O'] = StandardCharCode.O;
|
||||
ansi_generic['P'] = StandardCharCode.P;
|
||||
ansi_generic['Q'] = StandardCharCode.Q;
|
||||
ansi_generic['R'] = StandardCharCode.R;
|
||||
ansi_generic['S'] = StandardCharCode.S;
|
||||
ansi_generic['T'] = StandardCharCode.T;
|
||||
ansi_generic['U'] = StandardCharCode.U;
|
||||
ansi_generic['V'] = StandardCharCode.V;
|
||||
ansi_generic['W'] = StandardCharCode.W;
|
||||
ansi_generic['X'] = StandardCharCode.X;
|
||||
ansi_generic['Y'] = StandardCharCode.Y;
|
||||
ansi_generic['Z'] = StandardCharCode.Z;
|
||||
ansi_generic['['] = StandardCharCode.bracketleft;
|
||||
ansi_generic['\\'] = StandardCharCode.backslash;
|
||||
ansi_generic[']'] = StandardCharCode.bracketright;
|
||||
ansi_generic['^'] = StandardCharCode.asciicircum;
|
||||
ansi_generic['_'] = StandardCharCode.underscore;
|
||||
ansi_generic['`'] = StandardCharCode.quoteleft;
|
||||
ansi_generic['a'] = StandardCharCode.a;
|
||||
ansi_generic['b'] = StandardCharCode.b;
|
||||
ansi_generic['c'] = StandardCharCode.c;
|
||||
ansi_generic['d'] = StandardCharCode.d;
|
||||
ansi_generic['e'] = StandardCharCode.e;
|
||||
ansi_generic['f'] = StandardCharCode.f;
|
||||
ansi_generic['g'] = StandardCharCode.g;
|
||||
ansi_generic['h'] = StandardCharCode.h;
|
||||
ansi_generic['i'] = StandardCharCode.i;
|
||||
ansi_generic['j'] = StandardCharCode.j;
|
||||
ansi_generic['k'] = StandardCharCode.k;
|
||||
ansi_generic['l'] = StandardCharCode.l;
|
||||
ansi_generic['m'] = StandardCharCode.m;
|
||||
ansi_generic['n'] = StandardCharCode.n;
|
||||
ansi_generic['o'] = StandardCharCode.o;
|
||||
ansi_generic['p'] = StandardCharCode.p;
|
||||
ansi_generic['q'] = StandardCharCode.q;
|
||||
ansi_generic['r'] = StandardCharCode.r;
|
||||
ansi_generic['s'] = StandardCharCode.s;
|
||||
ansi_generic['t'] = StandardCharCode.t;
|
||||
ansi_generic['u'] = StandardCharCode.u;
|
||||
ansi_generic['v'] = StandardCharCode.v;
|
||||
ansi_generic['w'] = StandardCharCode.w;
|
||||
ansi_generic['x'] = StandardCharCode.x;
|
||||
ansi_generic['y'] = StandardCharCode.y;
|
||||
ansi_generic['z'] = StandardCharCode.z;
|
||||
ansi_generic['{'] = StandardCharCode.braceleft;
|
||||
ansi_generic['|'] = StandardCharCode.bar;
|
||||
ansi_generic['}'] = StandardCharCode.braceright;
|
||||
ansi_generic['~'] = StandardCharCode.asciitilde;
|
||||
ansi_generic[0xa0] = StandardCharCode.nobrkspace;
|
||||
ansi_generic[0xa1] = StandardCharCode.exclamdown;
|
||||
ansi_generic[0xa2] = StandardCharCode.cent;
|
||||
ansi_generic[0xa3] = StandardCharCode.sterling;
|
||||
ansi_generic[0xa4] = StandardCharCode.currency;
|
||||
ansi_generic[0xa5] = StandardCharCode.yen;
|
||||
ansi_generic[0xa6] = StandardCharCode.brokenbar;
|
||||
ansi_generic[0xa7] = StandardCharCode.section;
|
||||
ansi_generic[0xa8] = StandardCharCode.dieresis;
|
||||
ansi_generic[0xa9] = StandardCharCode.copyright;
|
||||
ansi_generic[0xaa] = StandardCharCode.ordfeminine;
|
||||
ansi_generic[0xab] = StandardCharCode.guillemotleft;
|
||||
ansi_generic[0xac] = StandardCharCode.logicalnot;
|
||||
ansi_generic[0xad] = StandardCharCode.opthyphen;
|
||||
ansi_generic[0xae] = StandardCharCode.registered;
|
||||
ansi_generic[0xaf] = StandardCharCode.macron;
|
||||
ansi_generic[0xb0] = StandardCharCode.degree;
|
||||
ansi_generic[0xb1] = StandardCharCode.plusminus;
|
||||
ansi_generic[0xb2] = StandardCharCode.twosuperior;
|
||||
ansi_generic[0xb3] = StandardCharCode.threesuperior;
|
||||
ansi_generic[0xb4] = StandardCharCode.acute;
|
||||
ansi_generic[0xb5] = StandardCharCode.mu;
|
||||
ansi_generic[0xb6] = StandardCharCode.paragraph;
|
||||
ansi_generic[0xb7] = StandardCharCode.periodcentered;
|
||||
ansi_generic[0xb8] = StandardCharCode.cedilla;
|
||||
ansi_generic[0xb9] = StandardCharCode.onesuperior;
|
||||
ansi_generic[0xba] = StandardCharCode.ordmasculine;
|
||||
ansi_generic[0xbb] = StandardCharCode.guillemotright;
|
||||
ansi_generic[0xbc] = StandardCharCode.onequarter;
|
||||
ansi_generic[0xbd] = StandardCharCode.onehalf;
|
||||
ansi_generic[0xbe] = StandardCharCode.threequarters;
|
||||
ansi_generic[0xbf] = StandardCharCode.questiondown;
|
||||
ansi_generic[0xc0] = StandardCharCode.Agrave;
|
||||
ansi_generic[0xc1] = StandardCharCode.Aacute;
|
||||
ansi_generic[0xc2] = StandardCharCode.Acircumflex;
|
||||
ansi_generic[0xc3] = StandardCharCode.Atilde;
|
||||
ansi_generic[0xc4] = StandardCharCode.Adieresis;
|
||||
ansi_generic[0xc5] = StandardCharCode.Aring;
|
||||
ansi_generic[0xc6] = StandardCharCode.AE;
|
||||
ansi_generic[0xc7] = StandardCharCode.Ccedilla;
|
||||
ansi_generic[0xc8] = StandardCharCode.Egrave;
|
||||
ansi_generic[0xc9] = StandardCharCode.Eacute;
|
||||
ansi_generic[0xca] = StandardCharCode.Ecircumflex;
|
||||
ansi_generic[0xcb] = StandardCharCode.Edieresis;
|
||||
ansi_generic[0xcc] = StandardCharCode.Igrave;
|
||||
ansi_generic[0xcd] = StandardCharCode.Iacute;
|
||||
ansi_generic[0xce] = StandardCharCode.Icircumflex;
|
||||
ansi_generic[0xcf] = StandardCharCode.Idieresis;
|
||||
ansi_generic[0xd0] = StandardCharCode.Eth;
|
||||
ansi_generic[0xd1] = StandardCharCode.Ntilde;
|
||||
ansi_generic[0xd2] = StandardCharCode.Ograve;
|
||||
ansi_generic[0xd3] = StandardCharCode.Oacute;
|
||||
ansi_generic[0xd4] = StandardCharCode.Ocircumflex;
|
||||
ansi_generic[0xd5] = StandardCharCode.Otilde;
|
||||
ansi_generic[0xd6] = StandardCharCode.Odieresis;
|
||||
ansi_generic[0xd7] = StandardCharCode.multiply;
|
||||
ansi_generic[0xd8] = StandardCharCode.Oslash;
|
||||
ansi_generic[0xd9] = StandardCharCode.Ugrave;
|
||||
ansi_generic[0xda] = StandardCharCode.Uacute;
|
||||
ansi_generic[0xdb] = StandardCharCode.Ucircumflex;
|
||||
ansi_generic[0xdc] = StandardCharCode.Udieresis;
|
||||
ansi_generic[0xdd] = StandardCharCode.Yacute;
|
||||
ansi_generic[0xde] = StandardCharCode.Thorn;
|
||||
ansi_generic[0xdf] = StandardCharCode.germandbls;
|
||||
ansi_generic[0xe0] = StandardCharCode.agrave;
|
||||
ansi_generic[0xe1] = StandardCharCode.aacute;
|
||||
ansi_generic[0xe2] = StandardCharCode.acircumflex;
|
||||
ansi_generic[0xe3] = StandardCharCode.atilde;
|
||||
ansi_generic[0xe4] = StandardCharCode.adieresis;
|
||||
ansi_generic[0xe5] = StandardCharCode.aring;
|
||||
ansi_generic[0xe6] = StandardCharCode.ae;
|
||||
ansi_generic[0xe7] = StandardCharCode.ccedilla;
|
||||
ansi_generic[0xe8] = StandardCharCode.egrave;
|
||||
ansi_generic[0xe9] = StandardCharCode.eacute;
|
||||
ansi_generic[0xea] = StandardCharCode.ecircumflex;
|
||||
ansi_generic[0xeb] = StandardCharCode.edieresis;
|
||||
ansi_generic[0xec] = StandardCharCode.igrave;
|
||||
ansi_generic[0xed] = StandardCharCode.iacute;
|
||||
ansi_generic[0xee] = StandardCharCode.icircumflex;
|
||||
ansi_generic[0xef] = StandardCharCode.idieresis;
|
||||
ansi_generic[0xf0] = StandardCharCode.eth;
|
||||
ansi_generic[0xf1] = StandardCharCode.ntilde;
|
||||
ansi_generic[0xf2] = StandardCharCode.ograve;
|
||||
ansi_generic[0xf3] = StandardCharCode.oacute;
|
||||
ansi_generic[0xf4] = StandardCharCode.ocircumflex;
|
||||
ansi_generic[0xf5] = StandardCharCode.otilde;
|
||||
ansi_generic[0xf6] = StandardCharCode.odieresis;
|
||||
ansi_generic[0xf7] = StandardCharCode.divide;
|
||||
ansi_generic[0xf8] = StandardCharCode.oslash;
|
||||
ansi_generic[0xf9] = StandardCharCode.ugrave;
|
||||
ansi_generic[0xfa] = StandardCharCode.uacute;
|
||||
ansi_generic[0xfb] = StandardCharCode.ucircumflex;
|
||||
ansi_generic[0xfc] = StandardCharCode.udieresis;
|
||||
ansi_generic[0xfd] = StandardCharCode.yacute;
|
||||
ansi_generic[0xfe] = StandardCharCode.thorn;
|
||||
ansi_generic[0xff] = StandardCharCode.ydieresis;
|
||||
|
||||
return ansi_generic;
|
||||
}
|
||||
}
|
||||
|
||||
public static Charcode AnsiSymbol {
|
||||
get {
|
||||
Charcode code = new Charcode(256);
|
||||
|
||||
code[0x06] = StandardCharCode.formula;
|
||||
code[0x1e] = StandardCharCode.nobrkhyphen;
|
||||
code[0x1f] = StandardCharCode.opthyphen;
|
||||
code[' '] = StandardCharCode.space;
|
||||
code['!'] = StandardCharCode.exclam;
|
||||
code['"'] = StandardCharCode.universal;
|
||||
code['#'] = StandardCharCode.mathnumbersign;
|
||||
code['$'] = StandardCharCode.existential;
|
||||
code['%'] = StandardCharCode.percent;
|
||||
code['&'] = StandardCharCode.ampersand;
|
||||
code['\\'] = StandardCharCode.suchthat;
|
||||
code['('] = StandardCharCode.parenleft;
|
||||
code[')'] = StandardCharCode.parenright;
|
||||
code['*'] = StandardCharCode.mathasterisk;
|
||||
code['+'] = StandardCharCode.mathplus;
|
||||
code[','] = StandardCharCode.comma;
|
||||
code['-'] = StandardCharCode.mathminus;
|
||||
code['.'] = StandardCharCode.period;
|
||||
code['/'] = StandardCharCode.slash;
|
||||
code['0'] = StandardCharCode.zero;
|
||||
code['1'] = StandardCharCode.one;
|
||||
code['2'] = StandardCharCode.two;
|
||||
code['3'] = StandardCharCode.three;
|
||||
code['4'] = StandardCharCode.four;
|
||||
code['5'] = StandardCharCode.five;
|
||||
code['6'] = StandardCharCode.six;
|
||||
code['7'] = StandardCharCode.seven;
|
||||
code['8'] = StandardCharCode.eight;
|
||||
code['9'] = StandardCharCode.nine;
|
||||
code[':'] = StandardCharCode.colon;
|
||||
code[';'] = StandardCharCode.semicolon;
|
||||
code['<'] = StandardCharCode.less;
|
||||
code['='] = StandardCharCode.mathequal;
|
||||
code['>'] = StandardCharCode.greater;
|
||||
code['?'] = StandardCharCode.question;
|
||||
code['@'] = StandardCharCode.congruent;
|
||||
code['A'] = StandardCharCode.Alpha;
|
||||
code['B'] = StandardCharCode.Beta;
|
||||
code['C'] = StandardCharCode.Chi;
|
||||
code['D'] = StandardCharCode.Delta;
|
||||
code['E'] = StandardCharCode.Epsilon;
|
||||
code['F'] = StandardCharCode.Phi;
|
||||
code['G'] = StandardCharCode.Gamma;
|
||||
code['H'] = StandardCharCode.Eta;
|
||||
code['I'] = StandardCharCode.Iota;
|
||||
code['K'] = StandardCharCode.Kappa;
|
||||
code['L'] = StandardCharCode.Lambda;
|
||||
code['M'] = StandardCharCode.Mu;
|
||||
code['N'] = StandardCharCode.Nu;
|
||||
code['O'] = StandardCharCode.Omicron;
|
||||
code['P'] = StandardCharCode.Pi;
|
||||
code['Q'] = StandardCharCode.Theta;
|
||||
code['R'] = StandardCharCode.Rho;
|
||||
code['S'] = StandardCharCode.Sigma;
|
||||
code['T'] = StandardCharCode.Tau;
|
||||
code['U'] = StandardCharCode.Upsilon;
|
||||
code['V'] = StandardCharCode.varsigma;
|
||||
code['W'] = StandardCharCode.Omega;
|
||||
code['X'] = StandardCharCode.Xi;
|
||||
code['Y'] = StandardCharCode.Psi;
|
||||
code['Z'] = StandardCharCode.Zeta;
|
||||
code['['] = StandardCharCode.bracketleft;
|
||||
code['\\'] = StandardCharCode.backslash;
|
||||
code[']'] = StandardCharCode.bracketright;
|
||||
code['^'] = StandardCharCode.asciicircum;
|
||||
code['_'] = StandardCharCode.underscore;
|
||||
code['`'] = StandardCharCode.quoteleft;
|
||||
code['a'] = StandardCharCode.alpha;
|
||||
code['b'] = StandardCharCode.beta;
|
||||
code['c'] = StandardCharCode.chi;
|
||||
code['d'] = StandardCharCode.delta;
|
||||
code['e'] = StandardCharCode.epsilon;
|
||||
code['f'] = StandardCharCode.phi;
|
||||
code['g'] = StandardCharCode.gamma;
|
||||
code['h'] = StandardCharCode.eta;
|
||||
code['i'] = StandardCharCode.iota;
|
||||
code['k'] = StandardCharCode.kappa;
|
||||
code['l'] = StandardCharCode.lambda;
|
||||
code['m'] = StandardCharCode.mu;
|
||||
code['n'] = StandardCharCode.nu;
|
||||
code['o'] = StandardCharCode.omicron;
|
||||
code['p'] = StandardCharCode.pi;
|
||||
code['q'] = StandardCharCode.theta;
|
||||
code['r'] = StandardCharCode.rho;
|
||||
code['s'] = StandardCharCode.sigma;
|
||||
code['t'] = StandardCharCode.tau;
|
||||
code['u'] = StandardCharCode.upsilon;
|
||||
code['w'] = StandardCharCode.omega;
|
||||
code['x'] = StandardCharCode.xi;
|
||||
code['y'] = StandardCharCode.psi;
|
||||
code['z'] = StandardCharCode.zeta;
|
||||
code['{'] = StandardCharCode.braceleft;
|
||||
code['|'] = StandardCharCode.bar;
|
||||
code['}'] = StandardCharCode.braceright;
|
||||
code['~'] = StandardCharCode.mathtilde;
|
||||
|
||||
return code;
|
||||
}
|
||||
}
|
||||
#endregion // Public Static Methods
|
||||
}
|
||||
}
|
@ -1,157 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
using System;
|
||||
|
||||
// COMPLETE
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
|
||||
#if RTF_LIB
|
||||
public
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
class Charset {
|
||||
#region Local Variables
|
||||
private CharsetType id;
|
||||
private CharsetFlags flags;
|
||||
private Charcode code;
|
||||
private string file;
|
||||
#endregion // Local Variables
|
||||
|
||||
#region Public Constructors
|
||||
public Charset() {
|
||||
flags = CharsetFlags.Read | CharsetFlags.Switch;
|
||||
id = CharsetType.General;
|
||||
file = string.Empty;
|
||||
this.ReadMap();
|
||||
}
|
||||
#endregion // Public Constructors
|
||||
|
||||
#region Public Instance Properties
|
||||
public Charcode Code {
|
||||
get {
|
||||
return code;
|
||||
}
|
||||
|
||||
set {
|
||||
code = value;
|
||||
}
|
||||
}
|
||||
|
||||
public CharsetFlags Flags {
|
||||
get {
|
||||
return flags;
|
||||
}
|
||||
|
||||
set {
|
||||
flags = value;
|
||||
}
|
||||
}
|
||||
|
||||
public CharsetType ID {
|
||||
get {
|
||||
return id;
|
||||
}
|
||||
|
||||
set {
|
||||
switch(value) {
|
||||
case CharsetType.Symbol: {
|
||||
id = CharsetType.Symbol;
|
||||
return;
|
||||
}
|
||||
|
||||
default:
|
||||
case CharsetType.General: {
|
||||
id = CharsetType.General;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string File {
|
||||
get {
|
||||
return file;
|
||||
}
|
||||
|
||||
set {
|
||||
if (file != value) {
|
||||
file = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public StandardCharCode this[int c] {
|
||||
get {
|
||||
return code[c];
|
||||
}
|
||||
}
|
||||
|
||||
#endregion // Public Instance Properties
|
||||
|
||||
#region Public Instance Methods
|
||||
public bool ReadMap() {
|
||||
switch (id) {
|
||||
case CharsetType.General: {
|
||||
if (file == string.Empty) {
|
||||
code = Charcode.AnsiGeneric;
|
||||
return true;
|
||||
}
|
||||
// FIXME - implement reading charmap from file...
|
||||
return true;
|
||||
}
|
||||
|
||||
case CharsetType.Symbol: {
|
||||
if (file == string.Empty) {
|
||||
code = Charcode.AnsiSymbol;
|
||||
return true;
|
||||
}
|
||||
|
||||
// FIXME - implement reading charmap from file...
|
||||
return true;
|
||||
}
|
||||
|
||||
default: {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public char StdCharCode(string name) {
|
||||
// FIXME - finish this
|
||||
return ' ';
|
||||
|
||||
}
|
||||
|
||||
public string StdCharName(char code) {
|
||||
// FIXME - finish this
|
||||
return String.Empty;
|
||||
}
|
||||
#endregion // Public Instance Methods
|
||||
}
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
// COMPLETE
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
[Flags]
|
||||
#if RTF_LIB
|
||||
public
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
enum CharsetFlags {
|
||||
None = 0x00,
|
||||
Read = 0x01,
|
||||
Switch = 0x02
|
||||
}
|
||||
}
|
@ -0,0 +1,79 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2020 Karl Scowen
|
||||
//
|
||||
// Authors:
|
||||
// Karl Scowen <contact@scowencomputers.co.nz>
|
||||
//
|
||||
//
|
||||
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
internal static class CharsetToCodepage {
|
||||
public static int Translate(CharsetType charset)
|
||||
{
|
||||
switch (charset) {
|
||||
case CharsetType.General:
|
||||
case CharsetType.Arabic_Traditional:
|
||||
case CharsetType.Arabic_user:
|
||||
case CharsetType.Hebrew_user:
|
||||
case CharsetType.Mac: // Technically wrong, because "mac" should actually be quite a few with their own code pages...
|
||||
default:
|
||||
return System.Text.Encoding.Default.CodePage;
|
||||
case CharsetType.ANSI:
|
||||
return 1252;
|
||||
case CharsetType.Symbol:
|
||||
return 42;
|
||||
case CharsetType.Shift_Jis:
|
||||
return 932;
|
||||
case CharsetType.Hangul:
|
||||
return 949;
|
||||
case CharsetType.Johab:
|
||||
return 1361;
|
||||
case CharsetType.GB2312:
|
||||
return 936;
|
||||
case CharsetType.Big5:
|
||||
return 950;
|
||||
case CharsetType.Greek:
|
||||
return 1253;
|
||||
case CharsetType.Turkish:
|
||||
return 1254;
|
||||
case CharsetType.Vietnamese:
|
||||
return 1258;
|
||||
case CharsetType.Hebrew:
|
||||
return 1255;
|
||||
case CharsetType.Arabic:
|
||||
return 1256;
|
||||
case CharsetType.Baltic:
|
||||
return 1257;
|
||||
case CharsetType.Russian:
|
||||
return 1251;
|
||||
case CharsetType.Thai:
|
||||
return 874;
|
||||
case CharsetType.Eastern_European:
|
||||
return 1250;
|
||||
case CharsetType.PC_437:
|
||||
return 437;
|
||||
case CharsetType.OEM:
|
||||
return 850;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -21,6 +21,7 @@
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
// Karl Scowen (contact@scowencomputers.co.nz)
|
||||
//
|
||||
//
|
||||
|
||||
@ -33,8 +34,29 @@ namespace System.Windows.Forms.RTF {
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
enum CharsetType {
|
||||
General = 0,
|
||||
Symbol = 1,
|
||||
enum CharsetType : byte {
|
||||
ANSI = 0,
|
||||
General = 1,
|
||||
Symbol = 2,
|
||||
Mac = 77,
|
||||
Shift_Jis = 128,
|
||||
Hangul = 129,
|
||||
Johab = 130,
|
||||
GB2312 = 134,
|
||||
Big5 = 136,
|
||||
Greek = 161,
|
||||
Turkish = 162,
|
||||
Vietnamese = 163,
|
||||
Hebrew = 177,
|
||||
Arabic = 178,
|
||||
Arabic_Traditional = 179,
|
||||
Arabic_user = 180,
|
||||
Hebrew_user = 181,
|
||||
Baltic = 186,
|
||||
Russian = 204,
|
||||
Thai = 222,
|
||||
Eastern_European = 238,
|
||||
PC_437 = 254,
|
||||
OEM = 255
|
||||
}
|
||||
}
|
||||
|
@ -366,10 +366,12 @@ namespace System.Windows.Forms.RTF {
|
||||
new KeyStruct(Major.StyleAttr, Minor.Next, "snext"),
|
||||
new KeyStruct(Major.PictAttr, Minor.MacQD, "macpict"),
|
||||
new KeyStruct(Major.PictAttr, Minor.PMMetafile, "pmmetafile"),
|
||||
new KeyStruct(Major.PictAttr, Minor.EnhancedMetafile, "emfblip"),
|
||||
new KeyStruct(Major.PictAttr, Minor.WinMetafile, "wmetafile"),
|
||||
new KeyStruct(Major.PictAttr, Minor.DevIndBitmap, "dibitmap"),
|
||||
new KeyStruct(Major.PictAttr, Minor.WinBitmap, "wbitmap"),
|
||||
new KeyStruct(Major.PictAttr, Minor.PngBlip, "pngblip"),
|
||||
new KeyStruct(Major.PictAttr, Minor.JpegBlip, "jpgblip"),
|
||||
new KeyStruct(Major.PictAttr, Minor.PixelBits, "wbmbitspixel"),
|
||||
new KeyStruct(Major.PictAttr, Minor.BitmapPlanes, "wbmplanes"),
|
||||
new KeyStruct(Major.PictAttr, Minor.BitmapWid, "wbmwidthbytes"),
|
||||
@ -393,6 +395,7 @@ namespace System.Windows.Forms.RTF {
|
||||
new KeyStruct(Major.NeXTGrAttr, Minor.NeXTGHeight, "height"),
|
||||
new KeyStruct(Major.Destination, Minor.OptDest, "*"),
|
||||
new KeyStruct(Major.Destination, Minor.FontTbl, "fonttbl"),
|
||||
new KeyStruct(Major.Destination, Minor.FontName, "fname"),
|
||||
new KeyStruct(Major.Destination, Minor.FontAltName, "falt"),
|
||||
new KeyStruct(Major.Destination, Minor.EmbeddedFont, "fonteb"),
|
||||
new KeyStruct(Major.Destination, Minor.FontFile, "fontfile"),
|
||||
|
@ -41,6 +41,7 @@ namespace System.Windows.Forms.RTF {
|
||||
|
||||
// Major.Destinan
|
||||
FontTbl,
|
||||
FontName,
|
||||
FontAltName,
|
||||
EmbeddedFont,
|
||||
FontFile,
|
||||
@ -520,10 +521,12 @@ namespace System.Windows.Forms.RTF {
|
||||
// Major.PictAttr
|
||||
MacQD,
|
||||
PMMetafile,
|
||||
EnhancedMetafile,
|
||||
WinMetafile,
|
||||
DevIndBitmap,
|
||||
WinBitmap,
|
||||
PngBlip,
|
||||
JpegBlip,
|
||||
PixelBits,
|
||||
BitmapPlanes,
|
||||
BitmapWid,
|
||||
|
@ -66,7 +66,7 @@ namespace System.Windows.Forms.RTF {
|
||||
public float Width {
|
||||
get {
|
||||
float w = width;
|
||||
if (w == -1) {
|
||||
if (w < 0) {
|
||||
if (image == null)
|
||||
image = ToImage ();
|
||||
w = image.Width;
|
||||
@ -79,7 +79,7 @@ namespace System.Windows.Forms.RTF {
|
||||
public float Height {
|
||||
get {
|
||||
float h = height;
|
||||
if (h == -1) {
|
||||
if (h < 0) {
|
||||
if (image == null)
|
||||
image = ToImage ();
|
||||
h = image.Height;
|
||||
@ -113,7 +113,9 @@ namespace System.Windows.Forms.RTF {
|
||||
return false;
|
||||
switch (image_type) {
|
||||
case Minor.PngBlip:
|
||||
case Minor.JpegBlip:
|
||||
case Minor.WinMetafile:
|
||||
case Minor.EnhancedMetafile:
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
@ -126,15 +128,7 @@ namespace System.Windows.Forms.RTF {
|
||||
{
|
||||
if (image == null)
|
||||
image = ToImage ();
|
||||
|
||||
float height = this.height;
|
||||
float width = this.width;
|
||||
|
||||
if (height == -1)
|
||||
height = image.Height;
|
||||
if (width == -1)
|
||||
width = image.Width;
|
||||
dc.DrawImage (image, x, y, width, height);
|
||||
dc.DrawImage (image, x, y, Width, Height);
|
||||
}
|
||||
|
||||
public Image ToImage ()
|
||||
|
@ -21,6 +21,7 @@
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
// Karl Scowen <contact@scowencomputers.co.nz>
|
||||
//
|
||||
|
||||
// COMPLETE
|
||||
@ -60,10 +61,6 @@ namespace System.Windows.Forms.RTF {
|
||||
|
||||
private char prev_char;
|
||||
private bool bump_line;
|
||||
|
||||
private Font font_list;
|
||||
|
||||
private Charset cur_charset;
|
||||
private Stack charset_stack;
|
||||
|
||||
private Style styles;
|
||||
@ -101,10 +98,7 @@ namespace System.Windows.Forms.RTF {
|
||||
line_pos = 0;
|
||||
prev_char = unchecked((char)-1);
|
||||
bump_line = false;
|
||||
font_list = null;
|
||||
charset_stack = null;
|
||||
|
||||
cur_charset = new Charset();
|
||||
charset_stack = new Stack();
|
||||
|
||||
destination_callbacks = new DestinationCallback();
|
||||
class_callbacks = new ClassCallback();
|
||||
@ -369,49 +363,52 @@ SkipCRLF:
|
||||
GetToken2();
|
||||
|
||||
if (this.rtf_class == TokenClass.Text) {
|
||||
this.minor = (Minor)this.cur_charset[(int)this.major];
|
||||
if (encoding == null) {
|
||||
if (encoding == null)
|
||||
encoding = Encoding.GetEncoding (encoding_code_page);
|
||||
}
|
||||
encoded_text = new String (encoding.GetChars (new byte [] { (byte) this.major }));
|
||||
}
|
||||
|
||||
if (this.cur_charset.Flags == CharsetFlags.None) {
|
||||
return this.rtf_class;
|
||||
}
|
||||
|
||||
if (CheckCMM (TokenClass.Control, Major.Unicode, Minor.UnicodeAnsiCodepage)) {
|
||||
} else if (CheckCMM (TokenClass.Control, Major.Unicode, Minor.UnicodeAnsiCodepage)) {
|
||||
encoding_code_page = param;
|
||||
|
||||
// fallback to the default one in case we have an invalid value
|
||||
if (encoding_code_page < 0 || encoding_code_page > 65535)
|
||||
encoding_code_page = DefaultEncodingCodePage;
|
||||
}
|
||||
|
||||
if (((this.cur_charset.Flags & CharsetFlags.Read) != 0) && CheckCM(TokenClass.Control, Major.CharSet)) {
|
||||
this.cur_charset.ReadMap();
|
||||
} else if (((this.cur_charset.Flags & CharsetFlags.Switch) != 0) && CheckCMM(TokenClass.Control, Major.CharAttr, Minor.FontNum)) {
|
||||
encoding = null;
|
||||
} else if (CheckCMM(TokenClass.Control, Major.CharAttr, Minor.FontNum)) {
|
||||
Font fp;
|
||||
|
||||
fp = Font.GetFont(this.font_list, this.param);
|
||||
fp = Font.GetFont(this.fonts, this.param);
|
||||
|
||||
if (fp != null) {
|
||||
if (fp.Name.StartsWith("Symbol")) {
|
||||
this.cur_charset.ID = CharsetType.Symbol;
|
||||
if (fp.Codepage != 0) {
|
||||
if (fp.Codepage != encoding_code_page) {
|
||||
encoding_code_page = fp.Codepage;
|
||||
encoding = null;
|
||||
}
|
||||
} else {
|
||||
this.cur_charset.ID = CharsetType.General;
|
||||
var cp = CharsetToCodepage.Translate (fp.Charset);
|
||||
if (cp != 0 && cp != encoding_code_page) {
|
||||
encoding_code_page = cp;
|
||||
encoding = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (this.rtf_class == TokenClass.Group) {
|
||||
switch(this.major) {
|
||||
case Major.BeginGroup: {
|
||||
charset_stack.Push(encoding_code_page);
|
||||
break;
|
||||
}
|
||||
} else if (((this.cur_charset.Flags & CharsetFlags.Switch) != 0) && (this.rtf_class == TokenClass.Group)) {
|
||||
switch(this.major) {
|
||||
case Major.BeginGroup: {
|
||||
this.charset_stack.Push(this.cur_charset);
|
||||
break;
|
||||
}
|
||||
|
||||
case Major.EndGroup: {
|
||||
this.cur_charset = (Charset)this.charset_stack.Pop();
|
||||
break;
|
||||
case Major.EndGroup: {
|
||||
if (charset_stack.Count > 0) {
|
||||
encoding_code_page = (int)this.charset_stack.Pop();
|
||||
} else {
|
||||
encoding_code_page = DefaultEncodingCodePage;
|
||||
}
|
||||
if (encoding != null && encoding.CodePage != encoding_code_page)
|
||||
encoding = null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -677,7 +674,10 @@ SkipCRLF:
|
||||
|
||||
font = new Font(rtf);
|
||||
|
||||
while ((rtf.rtf_class != TokenClass.EOF) && (!rtf.CheckCM(TokenClass.Text, (Major)';')) && (!rtf.CheckCM(TokenClass.Group, Major.EndGroup))) {
|
||||
int depth = 0;
|
||||
string untaggedName = null;
|
||||
|
||||
while ((rtf.rtf_class != TokenClass.EOF) && (!rtf.CheckCM(TokenClass.Text, (Major)';')) && depth >= 0) {
|
||||
if (rtf.rtf_class == TokenClass.Control) {
|
||||
switch(rtf.major) {
|
||||
case Major.FontFamily: {
|
||||
@ -734,6 +734,26 @@ SkipCRLF:
|
||||
break;
|
||||
}
|
||||
|
||||
case Major.Destination: {
|
||||
switch (rtf.minor) {
|
||||
case Minor.FontName:
|
||||
untaggedName = ReadFontName (rtf);
|
||||
break;
|
||||
|
||||
case Minor.FontAltName:
|
||||
font.AltName = ReadFontName (rtf);
|
||||
break;
|
||||
|
||||
default: {
|
||||
#if RTF_DEBUG
|
||||
Console.WriteLine ("Got unhandled Control.Destination.Minor: " + rtf.minor);
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
#if RTF_DEBUG
|
||||
Console.WriteLine("ReadFontTbl: Unknown Control token " + rtf.major);
|
||||
@ -742,22 +762,12 @@ SkipCRLF:
|
||||
}
|
||||
}
|
||||
} else if (rtf.CheckCM(TokenClass.Group, Major.BeginGroup)) {
|
||||
rtf.SkipGroup();
|
||||
} else if (rtf.rtf_class == TokenClass.Text) {
|
||||
StringBuilder sb;
|
||||
|
||||
sb = new StringBuilder();
|
||||
|
||||
while ((rtf.rtf_class != TokenClass.EOF) && (!rtf.CheckCM(TokenClass.Text, (Major)';')) && (!rtf.CheckCM(TokenClass.Group, Major.EndGroup)) && (!rtf.CheckCM(TokenClass.Group, Major.BeginGroup))) {
|
||||
sb.Append((char)rtf.major);
|
||||
rtf.GetToken();
|
||||
}
|
||||
|
||||
if (rtf.CheckCM(TokenClass.Group, Major.EndGroup)) {
|
||||
rtf.UngetToken();
|
||||
}
|
||||
|
||||
font.Name = sb.ToString();
|
||||
depth++;
|
||||
} else if (rtf.CheckCM(TokenClass.Group, Major.EndGroup)) {
|
||||
depth--;
|
||||
} else if (rtf.rtf_class == TokenClass.Text)
|
||||
{
|
||||
font.Name = ReadFontName (rtf);
|
||||
continue;
|
||||
#if RTF_DEBUG
|
||||
} else {
|
||||
@ -768,6 +778,9 @@ SkipCRLF:
|
||||
rtf.GetToken();
|
||||
}
|
||||
|
||||
if (untaggedName != null)
|
||||
font.Name = untaggedName;
|
||||
|
||||
if (old == 0) {
|
||||
rtf.GetToken();
|
||||
|
||||
@ -788,6 +801,26 @@ SkipCRLF:
|
||||
rtf.RouteToken();
|
||||
}
|
||||
|
||||
private static String ReadFontName(RTF rtf)
|
||||
{
|
||||
StringBuilder sb = new StringBuilder ();
|
||||
|
||||
while (rtf.rtf_class != TokenClass.EOF && rtf.rtf_class != TokenClass.Text)
|
||||
rtf.GetToken ();
|
||||
|
||||
while ((rtf.rtf_class != TokenClass.EOF) && (!rtf.CheckCM (TokenClass.Text, (Major)';')) && (!rtf.CheckCM(TokenClass.Group, Major.EndGroup)) &&
|
||||
(!rtf.CheckCM (TokenClass.Group, Major.BeginGroup))) {
|
||||
sb.Append ((char)rtf.major);
|
||||
rtf.GetToken ();
|
||||
}
|
||||
|
||||
if (rtf.CheckCM (TokenClass.Group, Major.EndGroup)) {
|
||||
rtf.UngetToken();
|
||||
}
|
||||
|
||||
return sb.ToString ();
|
||||
}
|
||||
|
||||
private void ReadColorTbl(RTF rtf) {
|
||||
Color color;
|
||||
int num;
|
||||
@ -943,20 +976,25 @@ SkipCRLF:
|
||||
private void ReadPictGroup(RTF rtf)
|
||||
{
|
||||
bool read_image_data = false;
|
||||
|
||||
int groupDepth = 0;
|
||||
Picture picture = new Picture ();
|
||||
while (true) {
|
||||
rtf.GetToken ();
|
||||
|
||||
if (rtf.CheckCM (TokenClass.Group, Major.BeginGroup))
|
||||
groupDepth++;
|
||||
|
||||
if (rtf.CheckCM (TokenClass.Group, Major.EndGroup))
|
||||
groupDepth--;
|
||||
|
||||
if (groupDepth < 0)
|
||||
break;
|
||||
|
||||
switch (minor) {
|
||||
case Minor.PngBlip:
|
||||
picture.ImageType = minor;
|
||||
read_image_data = true;
|
||||
break;
|
||||
case Minor.JpegBlip:
|
||||
case Minor.WinMetafile:
|
||||
case Minor.EnhancedMetafile:
|
||||
picture.ImageType = minor;
|
||||
read_image_data = true;
|
||||
continue;
|
||||
@ -1047,10 +1085,33 @@ SkipCRLF:
|
||||
}
|
||||
}
|
||||
|
||||
private void ReadObjGroup(RTF rtf) {
|
||||
rtf.SkipGroup();
|
||||
rtf.RouteToken();
|
||||
private void ReadObjGroup (RTF rtf)
|
||||
{
|
||||
int level;
|
||||
|
||||
level = 1;
|
||||
|
||||
while (GetToken () != TokenClass.EOF && this.minor != Minor.ObjResult) {
|
||||
if (rtf_class == TokenClass.Group) {
|
||||
if (this.major == Major.BeginGroup) {
|
||||
level++;
|
||||
} else if (this.major == Major.EndGroup) {
|
||||
level--;
|
||||
if (level < 1) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (level >= 1) {
|
||||
GetToken ();
|
||||
|
||||
if (rtf_class == TokenClass.Group)
|
||||
GetToken ();
|
||||
rtf.RouteToken ();
|
||||
}
|
||||
}
|
||||
#endregion // Default Delegates
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,392 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
// COMPLETE
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
|
||||
#if RTF_LIB
|
||||
public
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
enum StandardCharCode {
|
||||
nothing = 0,
|
||||
space = 1,
|
||||
exclam = 2,
|
||||
quotedbl = 3,
|
||||
numbersign = 4,
|
||||
dollar = 5,
|
||||
percent = 6,
|
||||
ampersand = 7,
|
||||
quoteright = 8,
|
||||
parenleft = 9,
|
||||
parenright = 10,
|
||||
asterisk = 11,
|
||||
plus = 12,
|
||||
comma = 13,
|
||||
hyphen = 14,
|
||||
period = 15,
|
||||
slash = 16,
|
||||
zero = 17,
|
||||
one = 18,
|
||||
two = 19,
|
||||
three = 20,
|
||||
four = 21,
|
||||
five = 22,
|
||||
six = 23,
|
||||
seven = 24,
|
||||
eight = 25,
|
||||
nine = 26,
|
||||
colon = 27,
|
||||
semicolon = 28,
|
||||
less = 29,
|
||||
equal = 30,
|
||||
greater = 31,
|
||||
question = 32,
|
||||
at = 33,
|
||||
A = 34,
|
||||
B = 35,
|
||||
C = 36,
|
||||
D = 37,
|
||||
E = 38,
|
||||
F = 39,
|
||||
G = 40,
|
||||
H = 41,
|
||||
I = 42,
|
||||
J = 43,
|
||||
K = 44,
|
||||
L = 45,
|
||||
M = 46,
|
||||
N = 47,
|
||||
O = 48,
|
||||
P = 49,
|
||||
Q = 50,
|
||||
R = 51,
|
||||
S = 52,
|
||||
T = 53,
|
||||
U = 54,
|
||||
V = 55,
|
||||
W = 56,
|
||||
X = 57,
|
||||
Y = 58,
|
||||
Z = 59,
|
||||
bracketleft = 60,
|
||||
backslash = 61,
|
||||
bracketright = 62,
|
||||
asciicircum = 63,
|
||||
underscore = 64,
|
||||
quoteleft = 65,
|
||||
a = 66,
|
||||
b = 67,
|
||||
c = 68,
|
||||
d = 69,
|
||||
e = 70,
|
||||
f = 71,
|
||||
g = 72,
|
||||
h = 73,
|
||||
i = 74,
|
||||
j = 75,
|
||||
k = 76,
|
||||
l = 77,
|
||||
m = 78,
|
||||
n = 79,
|
||||
o = 80,
|
||||
p = 81,
|
||||
q = 82,
|
||||
r = 83,
|
||||
s = 84,
|
||||
t = 85,
|
||||
u = 86,
|
||||
v = 87,
|
||||
w = 88,
|
||||
x = 89,
|
||||
y = 90,
|
||||
z = 91,
|
||||
braceleft = 92,
|
||||
bar = 93,
|
||||
braceright = 94,
|
||||
asciitilde = 95,
|
||||
exclamdown = 96,
|
||||
cent = 97,
|
||||
sterling = 98,
|
||||
fraction = 99,
|
||||
yen = 100,
|
||||
florin = 101,
|
||||
section = 102,
|
||||
currency = 103,
|
||||
quotedblleft = 104,
|
||||
guillemotleft = 105,
|
||||
guilsinglleft = 106,
|
||||
guilsinglright = 107,
|
||||
fi = 108,
|
||||
fl = 109,
|
||||
endash = 110,
|
||||
dagger = 111,
|
||||
daggerdbl = 112,
|
||||
periodcentered = 113,
|
||||
paragraph = 114,
|
||||
bullet = 115,
|
||||
quotesinglbase = 116,
|
||||
quotedblbase = 117,
|
||||
quotedblright = 118,
|
||||
guillemotright = 119,
|
||||
ellipsis = 120,
|
||||
perthousand = 121,
|
||||
questiondown = 122,
|
||||
grave = 123,
|
||||
acute = 124,
|
||||
circumflex = 125,
|
||||
tilde = 126,
|
||||
macron = 127,
|
||||
breve = 128,
|
||||
dotaccent = 129,
|
||||
dieresis = 130,
|
||||
ring = 131,
|
||||
cedilla = 132,
|
||||
hungarumlaut = 133,
|
||||
ogonek = 134,
|
||||
caron = 135,
|
||||
emdash = 136,
|
||||
AE = 137,
|
||||
ordfeminine = 138,
|
||||
Lslash = 139,
|
||||
Oslash = 140,
|
||||
OE = 141,
|
||||
ordmasculine = 142,
|
||||
ae = 143,
|
||||
dotlessi = 144,
|
||||
lslash = 145,
|
||||
oslash = 146,
|
||||
oe = 147,
|
||||
germandbls = 148,
|
||||
Aacute = 149,
|
||||
Acircumflex = 150,
|
||||
Adieresis = 151,
|
||||
Agrave = 152,
|
||||
Aring = 153,
|
||||
Atilde = 154,
|
||||
Ccedilla = 155,
|
||||
Eacute = 156,
|
||||
Ecircumflex = 157,
|
||||
Edieresis = 158,
|
||||
Egrave = 159,
|
||||
Eth = 160,
|
||||
Iacute = 161,
|
||||
Icircumflex = 162,
|
||||
Idieresis = 163,
|
||||
Igrave = 164,
|
||||
Ntilde = 165,
|
||||
Oacute = 166,
|
||||
Ocircumflex = 167,
|
||||
Odieresis = 168,
|
||||
Ograve = 169,
|
||||
Otilde = 170,
|
||||
Scaron = 171,
|
||||
Thorn = 172,
|
||||
Uacute = 173,
|
||||
Ucircumflex = 174,
|
||||
Udieresis = 175,
|
||||
Ugrave = 176,
|
||||
Yacute = 177,
|
||||
Ydieresis = 178,
|
||||
aacute = 179,
|
||||
acircumflex = 180,
|
||||
adieresis = 181,
|
||||
agrave = 182,
|
||||
aring = 183,
|
||||
atilde = 184,
|
||||
brokenbar = 185,
|
||||
ccedilla = 186,
|
||||
copyright = 187,
|
||||
degree = 188,
|
||||
divide = 189,
|
||||
eacute = 190,
|
||||
ecircumflex = 191,
|
||||
edieresis = 192,
|
||||
egrave = 193,
|
||||
eth = 194,
|
||||
iacute = 195,
|
||||
icircumflex = 196,
|
||||
idieresis = 197,
|
||||
igrave = 198,
|
||||
logicalnot = 199,
|
||||
minus = 200,
|
||||
multiply = 201,
|
||||
ntilde = 202,
|
||||
oacute = 203,
|
||||
ocircumflex = 204,
|
||||
odieresis = 205,
|
||||
ograve = 206,
|
||||
onehalf = 207,
|
||||
onequarter = 208,
|
||||
onesuperior = 209,
|
||||
otilde = 210,
|
||||
plusminus = 211,
|
||||
registered = 212,
|
||||
thorn = 213,
|
||||
threequarters = 214,
|
||||
threesuperior = 215,
|
||||
trademark = 216,
|
||||
twosuperior = 217,
|
||||
uacute = 218,
|
||||
ucircumflex = 219,
|
||||
udieresis = 220,
|
||||
ugrave = 221,
|
||||
yacute = 222,
|
||||
ydieresis = 223,
|
||||
Alpha = 224,
|
||||
Beta = 225,
|
||||
Chi = 226,
|
||||
Delta = 227,
|
||||
Epsilon = 228,
|
||||
Phi = 229,
|
||||
Gamma = 230,
|
||||
Eta = 231,
|
||||
Iota = 232,
|
||||
Kappa = 233,
|
||||
Lambda = 234,
|
||||
Mu = 235,
|
||||
Nu = 236,
|
||||
Omicron = 237,
|
||||
Pi = 238,
|
||||
Theta = 239,
|
||||
Rho = 240,
|
||||
Sigma = 241,
|
||||
Tau = 242,
|
||||
Upsilon = 243,
|
||||
varUpsilon = 244,
|
||||
Omega = 245,
|
||||
Xi = 246,
|
||||
Psi = 247,
|
||||
Zeta = 248,
|
||||
alpha = 249,
|
||||
beta = 250,
|
||||
chi = 251,
|
||||
delta = 252,
|
||||
epsilon = 253,
|
||||
phi = 254,
|
||||
varphi = 255,
|
||||
gamma = 256,
|
||||
eta = 257,
|
||||
iota = 258,
|
||||
kappa = 259,
|
||||
lambda = 260,
|
||||
mu = 261,
|
||||
nu = 262,
|
||||
omicron = 263,
|
||||
pi = 264,
|
||||
varpi = 265,
|
||||
theta = 266,
|
||||
vartheta = 267,
|
||||
rho = 268,
|
||||
sigma = 269,
|
||||
varsigma = 270,
|
||||
tau = 271,
|
||||
upsilon = 272,
|
||||
omega = 273,
|
||||
xi = 274,
|
||||
psi = 275,
|
||||
zeta = 276,
|
||||
nobrkspace = 277,
|
||||
nobrkhyphen = 278,
|
||||
lessequal = 279,
|
||||
greaterequal = 280,
|
||||
infinity = 281,
|
||||
integral = 282,
|
||||
notequal = 283,
|
||||
radical = 284,
|
||||
radicalex = 285,
|
||||
approxequal = 286,
|
||||
apple = 287,
|
||||
partialdiff = 288,
|
||||
opthyphen = 289,
|
||||
formula = 290,
|
||||
lozenge = 291,
|
||||
universal = 292,
|
||||
existential = 293,
|
||||
suchthat = 294,
|
||||
congruent = 295,
|
||||
therefore = 296,
|
||||
perpendicular = 297,
|
||||
minute = 298,
|
||||
club = 299,
|
||||
diamond = 300,
|
||||
heart = 301,
|
||||
spade = 302,
|
||||
arrowboth = 303,
|
||||
arrowleft = 304,
|
||||
arrowup = 305,
|
||||
arrowright = 306,
|
||||
arrowdown = 307,
|
||||
second = 308,
|
||||
proportional = 309,
|
||||
equivalence = 310,
|
||||
arrowvertex = 311,
|
||||
arrowhorizex = 312,
|
||||
carriagereturn = 313,
|
||||
aleph = 314,
|
||||
Ifraktur = 315,
|
||||
Rfraktur = 316,
|
||||
weierstrass = 317,
|
||||
circlemultiply = 318,
|
||||
circleplus = 319,
|
||||
emptyset = 320,
|
||||
intersection = 321,
|
||||
union = 322,
|
||||
propersuperset = 323,
|
||||
reflexsuperset = 324,
|
||||
notsubset = 325,
|
||||
propersubset = 326,
|
||||
reflexsubset = 327,
|
||||
element = 328,
|
||||
notelement = 329,
|
||||
angle = 330,
|
||||
gradient = 331,
|
||||
product = 332,
|
||||
logicaland = 333,
|
||||
logicalor = 334,
|
||||
arrowdblboth = 335,
|
||||
arrowdblleft = 336,
|
||||
arrowdblup = 337,
|
||||
arrowdblright = 338,
|
||||
arrowdbldown = 339,
|
||||
angleleft = 340,
|
||||
registersans = 341,
|
||||
copyrightsans = 342,
|
||||
trademarksans = 343,
|
||||
angleright = 344,
|
||||
mathplus = 345,
|
||||
mathminus = 346,
|
||||
mathasterisk = 347,
|
||||
mathnumbersign = 348,
|
||||
dotmath = 349,
|
||||
mathequal = 350,
|
||||
mathtilde = 351,
|
||||
|
||||
MaxChar = 352
|
||||
}
|
||||
}
|
@ -1,411 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
// COMPLETE
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
|
||||
#if RTF_LIB
|
||||
public
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
class StandardCharName {
|
||||
public static string[] Names = {
|
||||
"nothing",
|
||||
"space",
|
||||
"exclam",
|
||||
"quotedbl",
|
||||
"numbersign",
|
||||
"dollar",
|
||||
"percent",
|
||||
"ampersand",
|
||||
"quoteright",
|
||||
"parenleft",
|
||||
"parenright",
|
||||
"asterisk",
|
||||
"plus",
|
||||
"comma",
|
||||
"hyphen",
|
||||
"period",
|
||||
"slash",
|
||||
"zero",
|
||||
"one",
|
||||
"two",
|
||||
"three",
|
||||
"four",
|
||||
"five",
|
||||
"six",
|
||||
"seven",
|
||||
"eight",
|
||||
"nine",
|
||||
"colon",
|
||||
"semicolon",
|
||||
"less",
|
||||
"equal",
|
||||
"greater",
|
||||
"question",
|
||||
"at",
|
||||
"A",
|
||||
"B",
|
||||
"C",
|
||||
"D",
|
||||
"E",
|
||||
"F",
|
||||
"G",
|
||||
"H",
|
||||
"I",
|
||||
"J",
|
||||
"K",
|
||||
"L",
|
||||
"M",
|
||||
"N",
|
||||
"O",
|
||||
"P",
|
||||
"Q",
|
||||
"R",
|
||||
"S",
|
||||
"T",
|
||||
"U",
|
||||
"V",
|
||||
"W",
|
||||
"X",
|
||||
"Y",
|
||||
"Z",
|
||||
"bracketleft",
|
||||
"backslash",
|
||||
"bracketright",
|
||||
"asciicircum",
|
||||
"underscore",
|
||||
"quoteleft",
|
||||
"a",
|
||||
"b",
|
||||
"c",
|
||||
"d",
|
||||
"e",
|
||||
"f",
|
||||
"g",
|
||||
"h",
|
||||
"i",
|
||||
"j",
|
||||
"k",
|
||||
"l",
|
||||
"m",
|
||||
"n",
|
||||
"o",
|
||||
"p",
|
||||
"q",
|
||||
"r",
|
||||
"s",
|
||||
"t",
|
||||
"u",
|
||||
"v",
|
||||
"w",
|
||||
"x",
|
||||
"y",
|
||||
"z",
|
||||
"braceleft",
|
||||
"bar",
|
||||
"braceright",
|
||||
"asciitilde",
|
||||
"exclamdown",
|
||||
"cent",
|
||||
"sterling",
|
||||
"fraction",
|
||||
"yen",
|
||||
"florin",
|
||||
"section",
|
||||
"currency",
|
||||
"quotedblleft",
|
||||
"guillemotleft",
|
||||
"guilsinglleft",
|
||||
"guilsinglright",
|
||||
"fi",
|
||||
"fl",
|
||||
"endash",
|
||||
"dagger",
|
||||
"daggerdbl",
|
||||
"periodcentered",
|
||||
"paragraph",
|
||||
"bullet",
|
||||
"quotesinglbase",
|
||||
"quotedblbase",
|
||||
"quotedblright",
|
||||
"guillemotright",
|
||||
"ellipsis",
|
||||
"perthousand",
|
||||
"questiondown",
|
||||
"grave",
|
||||
"acute",
|
||||
"circumflex",
|
||||
"tilde",
|
||||
"macron",
|
||||
"breve",
|
||||
"dotaccent",
|
||||
"dieresis",
|
||||
"ring",
|
||||
"cedilla",
|
||||
"hungarumlaut",
|
||||
"ogonek",
|
||||
"caron",
|
||||
"emdash",
|
||||
"AE",
|
||||
"ordfeminine",
|
||||
"Lslash",
|
||||
"Oslash",
|
||||
"OE",
|
||||
"ordmasculine",
|
||||
"ae",
|
||||
"dotlessi",
|
||||
"lslash",
|
||||
"oslash",
|
||||
"oe",
|
||||
"germandbls",
|
||||
"Aacute",
|
||||
"Acircumflex",
|
||||
"Adieresis",
|
||||
"Agrave",
|
||||
"Aring",
|
||||
"Atilde",
|
||||
"Ccedilla",
|
||||
"Eacute",
|
||||
"Ecircumflex",
|
||||
"Edieresis",
|
||||
"Egrave",
|
||||
"Eth",
|
||||
"Iacute",
|
||||
"Icircumflex",
|
||||
"Idieresis",
|
||||
"Igrave",
|
||||
"Ntilde",
|
||||
"Oacute",
|
||||
"Ocircumflex",
|
||||
"Odieresis",
|
||||
"Ograve",
|
||||
"Otilde",
|
||||
"Scaron",
|
||||
"Thorn",
|
||||
"Uacute",
|
||||
"Ucircumflex",
|
||||
"Udieresis",
|
||||
"Ugrave",
|
||||
"Yacute",
|
||||
"Ydieresis",
|
||||
"aacute",
|
||||
"acircumflex",
|
||||
"adieresis",
|
||||
"agrave",
|
||||
"aring",
|
||||
"atilde",
|
||||
"brokenbar",
|
||||
"ccedilla",
|
||||
"copyright",
|
||||
"degree",
|
||||
"divide",
|
||||
"eacute",
|
||||
"ecircumflex",
|
||||
"edieresis",
|
||||
"egrave",
|
||||
"eth",
|
||||
"iacute",
|
||||
"icircumflex",
|
||||
"idieresis",
|
||||
"igrave",
|
||||
"logicalnot",
|
||||
"minus",
|
||||
"multiply",
|
||||
"ntilde",
|
||||
"oacute",
|
||||
"ocircumflex",
|
||||
"odieresis",
|
||||
"ograve",
|
||||
"onehalf",
|
||||
"onequarter",
|
||||
"onesuperior",
|
||||
"otilde",
|
||||
"plusminus",
|
||||
"registered",
|
||||
"thorn",
|
||||
"threequarters",
|
||||
"threesuperior",
|
||||
"trademark",
|
||||
"twosuperior",
|
||||
"uacute",
|
||||
"ucircumflex",
|
||||
"udieresis",
|
||||
"ugrave",
|
||||
"yacute",
|
||||
"ydieresis",
|
||||
"Alpha",
|
||||
"Beta",
|
||||
"Chi",
|
||||
"Delta",
|
||||
"Epsilon",
|
||||
"Phi",
|
||||
"Gamma",
|
||||
"Eta",
|
||||
"Iota",
|
||||
"Kappa",
|
||||
"Lambda",
|
||||
"Mu",
|
||||
"Nu",
|
||||
"Omicron",
|
||||
"Pi",
|
||||
"Theta",
|
||||
"Rho",
|
||||
"Sigma",
|
||||
"Tau",
|
||||
"Upsilon",
|
||||
"varUpsilon",
|
||||
"Omega",
|
||||
"Xi",
|
||||
"Psi",
|
||||
"Zeta",
|
||||
"alpha",
|
||||
"beta",
|
||||
"chi",
|
||||
"delta",
|
||||
"epsilon",
|
||||
"phi",
|
||||
"varphi",
|
||||
"gamma",
|
||||
"eta",
|
||||
"iota",
|
||||
"kappa",
|
||||
"lambda",
|
||||
"mu",
|
||||
"nu",
|
||||
"omicron",
|
||||
"pi",
|
||||
"varpi",
|
||||
"theta",
|
||||
"vartheta",
|
||||
"rho",
|
||||
"sigma",
|
||||
"varsigma",
|
||||
"tau",
|
||||
"upsilon",
|
||||
"omega",
|
||||
"xi",
|
||||
"psi",
|
||||
"zeta",
|
||||
"nobrkspace",
|
||||
"nobrkhyphen",
|
||||
"lessequal",
|
||||
"greaterequal",
|
||||
"infinity",
|
||||
"integral",
|
||||
"notequal",
|
||||
"radical",
|
||||
"radicalex",
|
||||
"approxequal",
|
||||
"apple",
|
||||
"partialdiff",
|
||||
"opthyphen",
|
||||
"formula",
|
||||
"lozenge",
|
||||
"universal",
|
||||
"existential",
|
||||
"suchthat",
|
||||
"congruent",
|
||||
"therefore",
|
||||
"perpendicular",
|
||||
"minute",
|
||||
"club",
|
||||
"diamond",
|
||||
"heart",
|
||||
"spade",
|
||||
"arrowboth",
|
||||
"arrowleft",
|
||||
"arrowup",
|
||||
"arrowright",
|
||||
"arrowdown",
|
||||
"second",
|
||||
"proportional",
|
||||
"equivalence",
|
||||
"arrowvertex",
|
||||
"arrowhorizex",
|
||||
"carriagereturn",
|
||||
"aleph",
|
||||
"Ifraktur",
|
||||
"Rfraktur",
|
||||
"weierstrass",
|
||||
"circlemultiply",
|
||||
"circleplus",
|
||||
"emptyset",
|
||||
"intersection",
|
||||
"union",
|
||||
"propersuperset",
|
||||
"reflexsuperset",
|
||||
"notsubset",
|
||||
"propersubset",
|
||||
"reflexsubset",
|
||||
"element",
|
||||
"notelement",
|
||||
"angle",
|
||||
"gradient",
|
||||
"product",
|
||||
"logicaland",
|
||||
"logicalor",
|
||||
"arrowdblboth",
|
||||
"arrowdblleft",
|
||||
"arrowdblup",
|
||||
"arrowdblright",
|
||||
"arrowdbldown",
|
||||
"angleleft",
|
||||
"registersans",
|
||||
"copyrightsans",
|
||||
"trademarksans",
|
||||
"angleright",
|
||||
"mathplus",
|
||||
"mathminus",
|
||||
"mathasterisk",
|
||||
"mathnumbersign",
|
||||
"dotmath",
|
||||
"mathequal",
|
||||
"mathtilde"
|
||||
};
|
||||
|
||||
/// <summary>Lookup name by ID</summary>
|
||||
public static string Name(int index) {
|
||||
if ((index < 0) || (index >= Names.Length)) {
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
return Names[index];
|
||||
}
|
||||
|
||||
/// <summary>Lookup ID by name (e.g. mathtilde)</summary>
|
||||
public static int ID(string name) {
|
||||
for (int i=0; i < Names.Length; i++) {
|
||||
if (name.Equals(Names[i])) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,440 +0,0 @@
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
//
|
||||
// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
|
||||
//
|
||||
// Authors:
|
||||
// Peter Bartok (pbartok@novell.com)
|
||||
//
|
||||
//
|
||||
|
||||
// This map is for convencience only, any app can create/use it's own
|
||||
// StdCharCode -> <text> table
|
||||
|
||||
using System.Collections;
|
||||
|
||||
namespace System.Windows.Forms.RTF {
|
||||
|
||||
#if RTF_LIB
|
||||
public
|
||||
#else
|
||||
internal
|
||||
#endif
|
||||
class TextMap {
|
||||
#region Local Variables
|
||||
private string[] table;
|
||||
#endregion // Local Variables
|
||||
|
||||
#region Public Constructors
|
||||
public TextMap() {
|
||||
table = new string[(int)StandardCharCode.MaxChar];
|
||||
|
||||
for (int i = 0; i < (int)StandardCharCode.MaxChar; i++) {
|
||||
table[i] = string.Empty;
|
||||
}
|
||||
}
|
||||
#endregion // Public Constructors
|
||||
|
||||
#region Public Instance Properties
|
||||
internal string this[StandardCharCode c] { // FIXME - this should be public, if the whole namespace was public (ie standalone RTF parser)
|
||||
get {
|
||||
return table[(int)c];
|
||||
}
|
||||
|
||||
set {
|
||||
table[(int)c] = value;
|
||||
}
|
||||
}
|
||||
|
||||
public string[] Table {
|
||||
get {
|
||||
return table;
|
||||
}
|
||||
}
|
||||
#endregion // Public Instance Properties
|
||||
|
||||
#region Public Static Methods
|
||||
public static void SetupStandardTable(string[] table)
|
||||
{
|
||||
/*
|
||||
table[(int)StandardCharCode.space] = " ";
|
||||
table[(int)StandardCharCode.exclam] = "!";
|
||||
table[(int)StandardCharCode.quotedbl] = "\"";
|
||||
table[(int)StandardCharCode.numbersign] = "#";
|
||||
table[(int)StandardCharCode.dollar] = "$";
|
||||
table[(int)StandardCharCode.percent] = "%";
|
||||
table[(int)StandardCharCode.ampersand] = "&";
|
||||
table[(int)StandardCharCode.quoteright] = "'";
|
||||
table[(int)StandardCharCode.parenleft] = "(";
|
||||
table[(int)StandardCharCode.parenright] = ")";
|
||||
table[(int)StandardCharCode.asterisk] = "*";
|
||||
table[(int)StandardCharCode.plus] = "+";
|
||||
table[(int)StandardCharCode.comma] = ",";
|
||||
table[(int)StandardCharCode.hyphen] = "-";
|
||||
table[(int)StandardCharCode.period] = ".";
|
||||
table[(int)StandardCharCode.slash] = "/";
|
||||
table[(int)StandardCharCode.zero] = "0";
|
||||
table[(int)StandardCharCode.one] = "1";
|
||||
table[(int)StandardCharCode.two] = "2";
|
||||
table[(int)StandardCharCode.three] = "3";
|
||||
table[(int)StandardCharCode.four] = "4";
|
||||
table[(int)StandardCharCode.five] = "5";
|
||||
table[(int)StandardCharCode.six] = "6";
|
||||
table[(int)StandardCharCode.seven] = "7";
|
||||
table[(int)StandardCharCode.eight] = "8";
|
||||
table[(int)StandardCharCode.nine] = "9";
|
||||
table[(int)StandardCharCode.colon] = ":";
|
||||
table[(int)StandardCharCode.semicolon] = ";";
|
||||
table[(int)StandardCharCode.less] = "<";
|
||||
table[(int)StandardCharCode.equal] = "=";
|
||||
table[(int)StandardCharCode.greater] = ">";
|
||||
table[(int)StandardCharCode.question] = "?";
|
||||
table[(int)StandardCharCode.at] = "@";
|
||||
table[(int)StandardCharCode.A] = "A";
|
||||
table[(int)StandardCharCode.B] = "B";
|
||||
table[(int)StandardCharCode.C] = "C";
|
||||
table[(int)StandardCharCode.D] = "D";
|
||||
table[(int)StandardCharCode.E] = "E";
|
||||
table[(int)StandardCharCode.F] = "F";
|
||||
table[(int)StandardCharCode.G] = "G";
|
||||
table[(int)StandardCharCode.H] = "H";
|
||||
table[(int)StandardCharCode.I] = "I";
|
||||
table[(int)StandardCharCode.J] = "J";
|
||||
table[(int)StandardCharCode.K] = "K";
|
||||
table[(int)StandardCharCode.L] = "L";
|
||||
table[(int)StandardCharCode.M] = "M";
|
||||
table[(int)StandardCharCode.N] = "N";
|
||||
table[(int)StandardCharCode.O] = "O";
|
||||
table[(int)StandardCharCode.P] = "P";
|
||||
table[(int)StandardCharCode.Q] = "Q";
|
||||
table[(int)StandardCharCode.R] = "R";
|
||||
table[(int)StandardCharCode.S] = "S";
|
||||
table[(int)StandardCharCode.T] = "T";
|
||||
table[(int)StandardCharCode.U] = "U";
|
||||
table[(int)StandardCharCode.V] = "V";
|
||||
table[(int)StandardCharCode.W] = "W";
|
||||
table[(int)StandardCharCode.X] = "X";
|
||||
table[(int)StandardCharCode.Y] = "Y";
|
||||
table[(int)StandardCharCode.Z] = "Z";
|
||||
table[(int)StandardCharCode.bracketleft] = "[";
|
||||
table[(int)StandardCharCode.backslash] = "\\";
|
||||
table[(int)StandardCharCode.bracketright] = "]";
|
||||
table[(int)StandardCharCode.asciicircum] = "^";
|
||||
table[(int)StandardCharCode.underscore] = "_";
|
||||
table[(int)StandardCharCode.quoteleft] = "`";
|
||||
table[(int)StandardCharCode.a] = "a";
|
||||
table[(int)StandardCharCode.b] = "b";
|
||||
table[(int)StandardCharCode.c] = "c";
|
||||
table[(int)StandardCharCode.d] = "d";
|
||||
table[(int)StandardCharCode.e] = "e";
|
||||
table[(int)StandardCharCode.f] = "f";
|
||||
table[(int)StandardCharCode.g] = "g";
|
||||
table[(int)StandardCharCode.h] = "h";
|
||||
table[(int)StandardCharCode.i] = "i";
|
||||
table[(int)StandardCharCode.j] = "j";
|
||||
table[(int)StandardCharCode.k] = "k";
|
||||
table[(int)StandardCharCode.l] = "l";
|
||||
table[(int)StandardCharCode.m] = "m";
|
||||
table[(int)StandardCharCode.n] = "n";
|
||||
table[(int)StandardCharCode.o] = "o";
|
||||
table[(int)StandardCharCode.p] = "p";
|
||||
table[(int)StandardCharCode.q] = "q";
|
||||
table[(int)StandardCharCode.r] = "r";
|
||||
table[(int)StandardCharCode.s] = "s";
|
||||
table[(int)StandardCharCode.t] = "t";
|
||||
table[(int)StandardCharCode.u] = "u";
|
||||
table[(int)StandardCharCode.v] = "v";
|
||||
table[(int)StandardCharCode.w] = "w";
|
||||
table[(int)StandardCharCode.x] = "x";
|
||||
table[(int)StandardCharCode.y] = "y";
|
||||
table[(int)StandardCharCode.z] = "z";
|
||||
table[(int)StandardCharCode.braceleft] = "{";
|
||||
table[(int)StandardCharCode.bar] = "|";
|
||||
table[(int)StandardCharCode.braceright] = "}";
|
||||
table[(int)StandardCharCode.asciitilde] = "~";
|
||||
table[(int)StandardCharCode.AE] = "AE";
|
||||
table[(int)StandardCharCode.OE] = "OE";
|
||||
table[(int)StandardCharCode.acute] = "'";
|
||||
table[(int)StandardCharCode.ae] = "ae";
|
||||
table[(int)StandardCharCode.angleleft] = "<";
|
||||
table[(int)StandardCharCode.angleright] = ">";
|
||||
table[(int)StandardCharCode.arrowboth] = "<->";
|
||||
table[(int)StandardCharCode.arrowdblboth] = "<=>";
|
||||
table[(int)StandardCharCode.arrowdblleft] = "<=";
|
||||
table[(int)StandardCharCode.arrowdblright] = "=>";
|
||||
table[(int)StandardCharCode.arrowleft] = "<-";
|
||||
table[(int)StandardCharCode.arrowright] = "->";
|
||||
table[(int)StandardCharCode.bullet] = "o";
|
||||
table[(int)StandardCharCode.cent] = "cent";
|
||||
table[(int)StandardCharCode.circumflex] = "^";
|
||||
table[(int)StandardCharCode.copyright] = "(c)";
|
||||
table[(int)StandardCharCode.copyrightsans] = "(c)";
|
||||
table[(int)StandardCharCode.degree] = "deg.";
|
||||
table[(int)StandardCharCode.divide] = "/";
|
||||
table[(int)StandardCharCode.dotlessi] = "i";
|
||||
table[(int)StandardCharCode.ellipsis] = "...";
|
||||
table[(int)StandardCharCode.emdash] = "--";
|
||||
table[(int)StandardCharCode.endash] = "-";
|
||||
table[(int)StandardCharCode.fi] = "fi";
|
||||
table[(int)StandardCharCode.fl] = "fl";
|
||||
table[(int)StandardCharCode.fraction] = "/";
|
||||
table[(int)StandardCharCode.germandbls] = "ss";
|
||||
table[(int)StandardCharCode.grave] = "`";
|
||||
table[(int)StandardCharCode.greaterequal] = ">=";
|
||||
table[(int)StandardCharCode.guillemotleft] = "<<";
|
||||
table[(int)StandardCharCode.guillemotright] = ">>";
|
||||
table[(int)StandardCharCode.guilsinglleft] = "<";
|
||||
table[(int)StandardCharCode.guilsinglright] = ">";
|
||||
table[(int)StandardCharCode.lessequal] = "<=";
|
||||
table[(int)StandardCharCode.logicalnot] = "~";
|
||||
table[(int)StandardCharCode.mathasterisk] = "*";
|
||||
table[(int)StandardCharCode.mathequal] = "=";
|
||||
table[(int)StandardCharCode.mathminus] = "-";
|
||||
table[(int)StandardCharCode.mathnumbersign] = "#";
|
||||
table[(int)StandardCharCode.mathplus] = "+";
|
||||
table[(int)StandardCharCode.mathtilde] = "~";
|
||||
table[(int)StandardCharCode.minus] = "-";
|
||||
table[(int)StandardCharCode.mu] = "u";
|
||||
table[(int)StandardCharCode.multiply] = "x";
|
||||
table[(int)StandardCharCode.nobrkhyphen] = "-";
|
||||
table[(int)StandardCharCode.nobrkspace] = "";
|
||||
table[(int)StandardCharCode.notequal] = "!=";
|
||||
table[(int)StandardCharCode.oe] = "oe";
|
||||
table[(int)StandardCharCode.onehalf] = "1/2";
|
||||
table[(int)StandardCharCode.onequarter] = "1/4";
|
||||
table[(int)StandardCharCode.periodcentered] = ".";
|
||||
table[(int)StandardCharCode.plusminus] = "+/-";
|
||||
table[(int)StandardCharCode.quotedblbase] = ",,";
|
||||
table[(int)StandardCharCode.quotedblleft] = "\"";
|
||||
table[(int)StandardCharCode.quotedblright] = "\"";
|
||||
table[(int)StandardCharCode.quotesinglbase] = ",";
|
||||
table[(int)StandardCharCode.registered] = "reg.";
|
||||
table[(int)StandardCharCode.registersans] = "reg.";
|
||||
table[(int)StandardCharCode.threequarters] = "3/4";
|
||||
table[(int)StandardCharCode.tilde] = "~";
|
||||
table[(int)StandardCharCode.trademark] = "(TM)";
|
||||
table[(int)StandardCharCode.trademarksans] = "(TM)";
|
||||
|
||||
table[(int)StandardCharCode.aacute] = "\xE0";
|
||||
table[(int)StandardCharCode.questiondown] = "\xBF";
|
||||
|
||||
table[(int)StandardCharCode.udieresis] = "\xFC";
|
||||
table[(int)StandardCharCode.Udieresis] = "\xDC";
|
||||
table[(int)StandardCharCode.odieresis] = "\xF6";
|
||||
table[(int)StandardCharCode.Odieresis] = "\xD6";
|
||||
*/
|
||||
|
||||
table [(int) StandardCharCode.formula] = "\x6";
|
||||
table [(int) StandardCharCode.nobrkhyphen] = "\x1e";
|
||||
table [(int) StandardCharCode.opthyphen] = "\x1f";
|
||||
table [(int) StandardCharCode.space] = " ";
|
||||
table [(int) StandardCharCode.exclam] = "!";
|
||||
table [(int) StandardCharCode.quotedbl] = "\"";
|
||||
table [(int) StandardCharCode.numbersign] = "#";
|
||||
table [(int) StandardCharCode.dollar] = "$";
|
||||
table [(int) StandardCharCode.percent] = "%";
|
||||
table [(int) StandardCharCode.ampersand] = "&";
|
||||
table [(int) StandardCharCode.parenleft] = "(";
|
||||
table [(int) StandardCharCode.parenright] = ")";
|
||||
table [(int) StandardCharCode.asterisk] = "*";
|
||||
table [(int) StandardCharCode.plus] = "+";
|
||||
table [(int) StandardCharCode.comma] = ",";
|
||||
table [(int) StandardCharCode.hyphen] = "-";
|
||||
table [(int) StandardCharCode.period] = ".";
|
||||
table [(int) StandardCharCode.slash] = "/";
|
||||
table [(int) StandardCharCode.zero] = "0";
|
||||
table [(int) StandardCharCode.one] = "1";
|
||||
table [(int) StandardCharCode.two] = "2";
|
||||
table [(int) StandardCharCode.three] = "3";
|
||||
table [(int) StandardCharCode.four] = "4";
|
||||
table [(int) StandardCharCode.five] = "5";
|
||||
table [(int) StandardCharCode.six] = "6";
|
||||
table [(int) StandardCharCode.seven] = "7";
|
||||
table [(int) StandardCharCode.eight] = "8";
|
||||
table [(int) StandardCharCode.nine] = "9";
|
||||
table [(int) StandardCharCode.colon] = ":";
|
||||
table [(int) StandardCharCode.semicolon] = ";";
|
||||
table [(int) StandardCharCode.less] = "<";
|
||||
table [(int) StandardCharCode.equal] = "=";
|
||||
table [(int) StandardCharCode.greater] = ">";
|
||||
table [(int) StandardCharCode.question] = "?";
|
||||
table [(int) StandardCharCode.at] = "@";
|
||||
table [(int) StandardCharCode.A] = "A";
|
||||
table [(int) StandardCharCode.B] = "B";
|
||||
table [(int) StandardCharCode.C] = "C";
|
||||
table [(int) StandardCharCode.D] = "D";
|
||||
table [(int) StandardCharCode.E] = "E";
|
||||
table [(int) StandardCharCode.F] = "F";
|
||||
table [(int) StandardCharCode.G] = "G";
|
||||
table [(int) StandardCharCode.H] = "H";
|
||||
table [(int) StandardCharCode.I] = "I";
|
||||
table [(int) StandardCharCode.J] = "J";
|
||||
table [(int) StandardCharCode.K] = "K";
|
||||
table [(int) StandardCharCode.L] = "L";
|
||||
table [(int) StandardCharCode.M] = "M";
|
||||
table [(int) StandardCharCode.N] = "N";
|
||||
table [(int) StandardCharCode.O] = "O";
|
||||
table [(int) StandardCharCode.P] = "P";
|
||||
table [(int) StandardCharCode.Q] = "Q";
|
||||
table [(int) StandardCharCode.R] = "R";
|
||||
table [(int) StandardCharCode.S] = "S";
|
||||
table [(int) StandardCharCode.T] = "T";
|
||||
table [(int) StandardCharCode.U] = "U";
|
||||
table [(int) StandardCharCode.V] = "V";
|
||||
table [(int) StandardCharCode.W] = "W";
|
||||
table [(int) StandardCharCode.X] = "X";
|
||||
table [(int) StandardCharCode.Y] = "Y";
|
||||
table [(int) StandardCharCode.Z] = "Z";
|
||||
table [(int) StandardCharCode.bracketleft] = "[";
|
||||
table [(int) StandardCharCode.backslash] = "\\";
|
||||
table [(int) StandardCharCode.bracketright] = "]";
|
||||
table [(int) StandardCharCode.asciicircum] = "^";
|
||||
table [(int) StandardCharCode.underscore] = "_";
|
||||
table [(int) StandardCharCode.quoteleft] = "`";
|
||||
table [(int) StandardCharCode.a] = "a";
|
||||
table [(int) StandardCharCode.b] = "b";
|
||||
table [(int) StandardCharCode.c] = "c";
|
||||
table [(int) StandardCharCode.d] = "d";
|
||||
table [(int) StandardCharCode.e] = "e";
|
||||
table [(int) StandardCharCode.f] = "f";
|
||||
table [(int) StandardCharCode.g] = "g";
|
||||
table [(int) StandardCharCode.h] = "h";
|
||||
table [(int) StandardCharCode.i] = "i";
|
||||
table [(int) StandardCharCode.j] = "j";
|
||||
table [(int) StandardCharCode.k] = "k";
|
||||
table [(int) StandardCharCode.l] = "l";
|
||||
table [(int) StandardCharCode.m] = "m";
|
||||
table [(int) StandardCharCode.n] = "n";
|
||||
table [(int) StandardCharCode.o] = "o";
|
||||
table [(int) StandardCharCode.p] = "p";
|
||||
table [(int) StandardCharCode.q] = "q";
|
||||
table [(int) StandardCharCode.r] = "r";
|
||||
table [(int) StandardCharCode.s] = "s";
|
||||
table [(int) StandardCharCode.t] = "t";
|
||||
table [(int) StandardCharCode.u] = "u";
|
||||
table [(int) StandardCharCode.v] = "v";
|
||||
table [(int) StandardCharCode.w] = "w";
|
||||
table [(int) StandardCharCode.x] = "x";
|
||||
table [(int) StandardCharCode.y] = "y";
|
||||
table [(int) StandardCharCode.z] = "z";
|
||||
table [(int) StandardCharCode.braceleft] = "{";
|
||||
table [(int) StandardCharCode.bar] = "|";
|
||||
table [(int) StandardCharCode.braceright] = "}";
|
||||
table [(int) StandardCharCode.asciitilde] = "~";
|
||||
table [(int) StandardCharCode.nobrkspace] = "\xa0";
|
||||
table [(int) StandardCharCode.exclamdown] = "\xa1";
|
||||
table [(int) StandardCharCode.cent] = "\xa2";
|
||||
table [(int) StandardCharCode.sterling] = "\xa3";
|
||||
table [(int) StandardCharCode.currency] = "\xa4";
|
||||
table [(int) StandardCharCode.yen] = "\xa5";
|
||||
table [(int) StandardCharCode.brokenbar] = "\xa6";
|
||||
table [(int) StandardCharCode.section] = "\xa7";
|
||||
table [(int) StandardCharCode.dieresis] = "\xa8";
|
||||
table [(int) StandardCharCode.copyright] = "\xa9";
|
||||
table [(int) StandardCharCode.ordfeminine] = "\xaa";
|
||||
table [(int) StandardCharCode.guillemotleft] = "\xab";
|
||||
table [(int) StandardCharCode.logicalnot] = "\xac";
|
||||
table [(int) StandardCharCode.opthyphen] = "\xad";
|
||||
table [(int) StandardCharCode.registered] = "\xae";
|
||||
table [(int) StandardCharCode.macron] = "\xaf";
|
||||
table [(int) StandardCharCode.degree] = "\xb0";
|
||||
table [(int) StandardCharCode.plusminus] = "\xb1";
|
||||
table [(int) StandardCharCode.twosuperior] = "\xb2";
|
||||
table [(int) StandardCharCode.threesuperior] = "\xb3";
|
||||
table [(int) StandardCharCode.acute] = "\xb4";
|
||||
table [(int) StandardCharCode.mu] = "\xb5";
|
||||
table [(int) StandardCharCode.paragraph] = "\xb6";
|
||||
table [(int) StandardCharCode.periodcentered] = "\xb7";
|
||||
table [(int) StandardCharCode.cedilla] = "\xb8";
|
||||
table [(int) StandardCharCode.onesuperior] = "\xb9";
|
||||
table [(int) StandardCharCode.ordmasculine] = "\xba";
|
||||
table [(int) StandardCharCode.guillemotright] = "\xbb";
|
||||
table [(int) StandardCharCode.onequarter] = "\xbc";
|
||||
table [(int) StandardCharCode.onehalf] = "\xbd";
|
||||
table [(int) StandardCharCode.threequarters] = "\xbe";
|
||||
table [(int) StandardCharCode.questiondown] = "\xbf";
|
||||
table [(int) StandardCharCode.Agrave] = "\xc0";
|
||||
table [(int) StandardCharCode.Aacute] = "\xc1";
|
||||
table [(int) StandardCharCode.Acircumflex] = "\xc2";
|
||||
table [(int) StandardCharCode.Atilde] = "\xc3";
|
||||
table [(int) StandardCharCode.Adieresis] = "\xc4";
|
||||
table [(int) StandardCharCode.Aring] = "\xc5";
|
||||
table [(int) StandardCharCode.AE] = "\xc6";
|
||||
table [(int) StandardCharCode.Ccedilla] = "\xc7";
|
||||
table [(int) StandardCharCode.Egrave] = "\xc8";
|
||||
table [(int) StandardCharCode.Eacute] = "\xc9";
|
||||
table [(int) StandardCharCode.Ecircumflex] = "\xca";
|
||||
table [(int) StandardCharCode.Edieresis] = "\xcb";
|
||||
table [(int) StandardCharCode.Igrave] = "\xcc";
|
||||
table [(int) StandardCharCode.Iacute] = "\xcd";
|
||||
table [(int) StandardCharCode.Icircumflex] = "\xce";
|
||||
table [(int) StandardCharCode.Idieresis] = "\xcf";
|
||||
table [(int) StandardCharCode.Eth] = "\xd0";
|
||||
table [(int) StandardCharCode.Ntilde] = "\xd1";
|
||||
table [(int) StandardCharCode.Ograve] = "\xd2";
|
||||
table [(int) StandardCharCode.Oacute] = "\xd3";
|
||||
table [(int) StandardCharCode.Ocircumflex] = "\xd4";
|
||||
table [(int) StandardCharCode.Otilde] = "\xd5";
|
||||
table [(int) StandardCharCode.Odieresis] = "\xd6";
|
||||
table [(int) StandardCharCode.multiply] = "\xd7";
|
||||
table [(int) StandardCharCode.Oslash] = "\xd8";
|
||||
table [(int) StandardCharCode.Ugrave] = "\xd9";
|
||||
table [(int) StandardCharCode.Uacute] = "\xda";
|
||||
table [(int) StandardCharCode.Ucircumflex] = "\xdb";
|
||||
table [(int) StandardCharCode.Udieresis] = "\xdc";
|
||||
table [(int) StandardCharCode.Yacute] = "\xdd";
|
||||
table [(int) StandardCharCode.Thorn] = "\xde";
|
||||
table [(int) StandardCharCode.germandbls] = "\xdf";
|
||||
table [(int) StandardCharCode.agrave] = "\xe0";
|
||||
table [(int) StandardCharCode.aacute] = "\xe1";
|
||||
table [(int) StandardCharCode.acircumflex] = "\xe2";
|
||||
table [(int) StandardCharCode.atilde] = "\xe3";
|
||||
table [(int) StandardCharCode.adieresis] = "\xe4";
|
||||
table [(int) StandardCharCode.aring] = "\xe5";
|
||||
table [(int) StandardCharCode.ae] = "\xe6";
|
||||
table [(int) StandardCharCode.ccedilla] = "\xe7";
|
||||
table [(int) StandardCharCode.egrave] = "\xe8";
|
||||
table [(int) StandardCharCode.eacute] = "\xe9";
|
||||
table [(int) StandardCharCode.ecircumflex] = "\xea";
|
||||
table [(int) StandardCharCode.edieresis] = "\xeb";
|
||||
table [(int) StandardCharCode.igrave] = "\xec";
|
||||
table [(int) StandardCharCode.iacute] = "\xed";
|
||||
table [(int) StandardCharCode.icircumflex] = "\xee";
|
||||
table [(int) StandardCharCode.idieresis] = "\xef";
|
||||
table [(int) StandardCharCode.eth] = "\xf0";
|
||||
table [(int) StandardCharCode.ntilde] = "\xf1";
|
||||
table [(int) StandardCharCode.ograve] = "\xf2";
|
||||
table [(int) StandardCharCode.oacute] = "\xf3";
|
||||
table [(int) StandardCharCode.ocircumflex] = "\xf4";
|
||||
table [(int) StandardCharCode.otilde] = "\xf5";
|
||||
table [(int) StandardCharCode.odieresis] = "\xf6";
|
||||
table [(int) StandardCharCode.divide] = "\xf7";
|
||||
table [(int) StandardCharCode.oslash] = "\xf8";
|
||||
table [(int) StandardCharCode.ugrave] = "\xf9";
|
||||
table [(int) StandardCharCode.uacute] = "\xfa";
|
||||
table [(int) StandardCharCode.ucircumflex] = "\xfb";
|
||||
table [(int) StandardCharCode.udieresis] = "\xfc";
|
||||
table [(int) StandardCharCode.yacute] = "\xfd";
|
||||
table [(int) StandardCharCode.thorn] = "\xfe";
|
||||
table [(int) StandardCharCode.ydieresis] = "\xff";
|
||||
|
||||
}
|
||||
#endregion // Public Static Methods
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user