123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- #region MIT License
- /*Copyright (c) 2012 Robert Rouhani <robert.rouhani@gmail.com>
- SharpFont based on Tao.FreeType, Copyright (c) 2003-2007 Tao Framework Team
- 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.*/
- #endregion
- using System;
- namespace SharpFont.PostScript
- {
- /// <summary>
- /// An enumeration used in calls to <see cref="Face.GetPSFontValue"/> to identify the Type 1 dictionary entry to
- /// retrieve.
- /// </summary>
- /// <see href="http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF"/>
- public enum DictionaryKeys
- {
- /// <summary>
- /// The font's type. Type 1 fonts must have a value of 1.
- /// </summary>
- FontType,
- /// <summary>
- /// The font's matrix. Typically scaled 1000:1.
- /// </summary>
- FontMatrix,
- /// <summary>
- /// The font's general bounding box.
- /// </summary>
- FontBBox,
-
- /// <summary>
- /// The font's method of painting characters. Type 1 only supports fill (0) and outline (2).
- /// </summary>
- PaintType,
- /// <summary>
- /// The font's name.
- /// </summary>
- FontName,
- /// <summary>
- /// A unique identifier for popular fonts assigned by Adobe.
- /// </summary>
- UniqueId,
- /// <summary>
- /// The number of characters the font can draw.
- /// </summary>
- NumCharStrings,
- CharStringKey,
- CharString,
- EncodingType,
- EncodingEntry,
- /// <summary>
- /// The number of charstring subroutines in the font.
- /// </summary>
- NumSubrs,
- /// <summary>
- /// The font's subroutines.
- /// </summary>
- Subr,
- /// <summary>
- /// An array with only one real number entry expressing the dominant width of horizontal stems (measured
- /// vertically in character space units).
- /// </summary>
- StdHW,
- /// <summary>
- /// An array with only one real number entry expressing the dominant width of vertical stems (measured
- /// horizontally in character space units).
- /// </summary>
- StdVW,
- /// <summary>
- /// The number of BlueValues the font defines. The value must be at least 0 and at most 14. (7 integer pairs).
- /// </summary>
- NumBlueValues,
- /// <summary>
- /// An array of integer pairs. The first pair must be the base overshoot position and the base-line.
- /// </summary>
- BlueValue,
- /// <summary>
- /// An optional entry that specifies the number of character space units to extend (in both directions) the
- /// effect of an alignment zone on a horizontal stem. The default value is 1.
- /// </summary>
- BlueFuzz,
- /// <summary>
- /// The number of OtherBlue values. The value must be at least 0 and at most 10 (5 integer pairs).
- /// </summary>
- NumOtherBlues,
- /// <summary>
- /// An optional array of integer pairs very similar to those in <see cref="BlueValue"/>.
- /// </summary>
- OtherBlue,
- /// <summary>
- /// The number of FamilyBlue values.
- /// </summary>
- NumFamilyBlues,
- /// <summary>
- /// An array of integer pairs very similar to those in <see cref="BlueValue"/>.
- /// </summary>
- FamilyBlue,
- /// <summary>
- /// The number of FamilyOtherBlue values.
- /// </summary>
- NumFamilyOtherBlues,
- /// <summary>
- /// An array of integer pairs very similar to those in <see cref="OtherBlue"/>.
- /// </summary>
- FamilyOtherBlue,
- /// <summary>
- /// An optional entry that controls the point size at which overshoot suppression ceases. The default value is
- /// 0.039625.
- /// </summary>
- BlueScale,
- /// <summary>
- /// An optional entry that indicates a character space distance beyond the flat position of alignment zones at
- /// which overshoot enforcement for character features occurs. The default value is 7.
- /// </summary>
- BlueShift,
- /// <summary>
- /// The number of StemSnapH values. Cannot exceed 12.
- /// </summary>
- NumStemSnapH,
- /// <summary>
- /// An array of up to 12 real numbers of the most common widths (including the dominant width given in the
- /// StdHW array) for horizontal stems (measured vertically). These widths must be sorted in increasing order.
- /// </summary>
- StemSnapH,
- /// <summary>
- /// The number of StemSnapV values. Cannot exceed 12.
- /// </summary>
- NumStemSnapV,
- /// <summary>
- /// An array of up to 12 real numbers of the most common widths (including the dominant width given in the
- /// StdVW array) for vertical stems (measured horizontally). These widths must be sorted in increasing order.
- /// </summary>
- StemSnapV,
- /// <summary>
- /// A boolean value indicating whether to force bold characters when a regular character is drawn 1-pixel wide.
- /// </summary>
- ForceBold,
- /// <summary>
- /// Compatibility entry. Use only for font programs in language group 1.
- /// </summary>
- RndStemUp,
- /// <summary>
- /// Obsolete. Set to {16 16}. Required.
- /// </summary>
- MinFeature,
- /// <summary>
- /// An integer specifying the number of random bytes at the beginning of charstrings for encryption. By default
- /// this value is 4.
- /// </summary>
- LenIV,
- /// <summary>
- /// Compatibility entry. Set to 5839.
- /// </summary>
- Password,
- /// <summary>
- /// Identifies the language group of the font. A value of 0 indicates a language that uses Latin, Greek,
- /// Cyrillic, etc. characters. A value of 1 indicates a language that consists of Chinese ideographs, Jpaanese
- /// Kanji, and Korean Hangul. The default value is 0.
- /// </summary>
- LanguageGroup,
- Version,
- Notice,
- FullName,
- FamilyName,
- Weight,
- IsFixedPitch,
- UnderlinePosition,
- FSType,
- ItalicAngle
- }
- }
|