The Trunk: TrueType-nice.15.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: TrueType-nice.15.mcz

commits-2
Nicolas Cellier uploaded a new version of TrueType to project The Trunk:
http://source.squeak.org/trunk/TrueType-nice.15.mcz

==================== Summary ====================

Name: TrueType-nice.15
Author: nice
Time: 28 March 2010, 7:10:44.962 pm
UUID: 6a8e5e5b-bcf5-4e58-8edf-6f5fa1f9f3c5
Ancestors: TrueType-nice.14

Authorize parsing of TTCF file version 2.
That certainly is not sufficient, but at least, that allows  (TTFileDescription installFamilyNamed: 'Arial') to work on Mac Snow Leopard.

=============== Diff against TrueType-nice.14 ===============

Item was changed:
  ----- Method: TTFileDescription class>>allFamilyNamesAndFiles (in category 'font paths') -----
  allFamilyNamesAndFiles
  "Answer a dictionary of all known family names and their corresponding file names."
 
  AllFontsAndFiles ifNil:[
  AllFontsAndFiles := Dictionary new.
+ Cursor wait showWhile:[self allFontsDo:[:font|
+ | names |
- Cursor wait showWhile:[self allFontsDo:[:font| | names |
  names := AllFontsAndFiles at: font familyName
  ifAbsentPut:[OrderedCollection new].
  names add: font fileName]]].
  ^AllFontsAndFiles !

Item was changed:
  ----- Method: TTFileDescription class>>allFontsAndFiles (in category 'font paths') -----
  allFontsAndFiles
  "Answer a dictionary of all known family names and their corresponding file names."
 
  AllFontsAndFiles ifNil:[
  AllFontsAndFiles := Dictionary new.
+ Cursor wait showWhile:[self allFontsDo:[:font|
+ | names |
- Cursor wait showWhile:[self allFontsDo:[:font| | names |
  names := AllFontsAndFiles at: font familyName
  ifAbsentPut:[OrderedCollection new].
  names add: font fileName]]].
  ^AllFontsAndFiles !

Item was changed:
  ----- Method: TTFileDescription class>>fontOffsetsInFile: (in category 'instance creation') -----
  fontOffsetsInFile: file
  "Answer a collection of font offsets in the given file"
  | tag version nFonts |
  file position: 0.
  tag := file next: 4.
+ tag caseOf: {
- tag caseOf:{
  ['true' asByteArray] -> ["Version 1.0 TTF file"
  "http://developer.apple.com/textfonts/TTRefMan/RM06/Chap6.html
  The values 'true' (0x74727565) and 0x00010000 are recognized by the Mac OS
  as referring to TrueType fonts."
  ^Array with: 0 "only one font"
  ].
  [#[0 1 0 0]] -> ["Version 1.0 TTF file"
  ^Array with: 0 "only one font"
  ].
  ['ttcf' asByteArray] -> ["TTC file"
  version := file next: 4.
+ (version = #[0 1 0 0] or: [version = #[0 2 0 0]]) ifFalse: [^self error: 'Unsupported TTC version'].
- version = #(0 1 0 0) asByteArray ifFalse:[^self error: 'Unsupported TTC version'].
  nFonts := file nextNumber: 4.
+ ^(1 to: nFonts) collect: [:i | file nextNumber: 4].
- ^(1 to: nFonts) collect:[:i| file nextNumber: 4].
  ].
  } otherwise:[
  self error: 'This is not a valid Truetype file'.
  ].!