var fileArr = [];
for (var i = 0, ii = bytes.length; i < ii; ++i)
fileArr.push(bytes[i]);
- writeToFile(fileArr, '/tmp/' + name);
+ writeToFile(data, '/tmp/' + name);
+ writeToFile(fileArr, '/tmp/' + name + 'file');
this.data = data;
this.type = properties.type;
var ActualCFF = (function() {
function constructor(file) {
- this.bytes = file.getBytes();
+ var bytes = file.getBytes();
+ this.bytes = bytes;
+
+ var data = []
+ for (var i = 0, ii = bytes.length; i < ii; ++i)
+ data.push(bytes[i]);
+ this.data = data;
+
this.parse();
};
baseDict = this.parseDict(privBytes);
// var privDict = this.getPrivDict(baseDict, strings);
- var encodings = this.parseEncoding(topDict['Encoding']);
+ var encoding = this.parseEncoding(topDict['Encoding']);
var charStrings = this.parseIndex(topDict['CharStrings']);
- var charsets = this.parseCharsets(topDict['charset'], charStrings.length,
+ var charset = this.parseCharsets(topDict['charset'], charStrings.length,
strings);
+ this.charstrings = this.getCharStrings(encoding, charset);
+
// var dict = dictIndex.get(0);
log('blah');
},
+ getCharStrings: function cff_charstrings(encoding, charsets) {
+ var charstrings = [];
+ for (var i = 0, ii = charsets.length; i < ii; ++i) {
+ var charName = charsets[i];
+ var charCode = GlyphsUnicode[charName];
+ if (charCode)
+ charstrings.push( {unicode: charCode, width: 0});
+ }
+ return charstrings;
+ },
parseEncoding: function cff_parseencoding(pos) {
if (pos == 0) {
return Encodings.StandardEncoding;
endPos: end
}
},
- bytesToString: function cff_bytestostring(bytes) {
+ bytesToString: function cff_bytestostring(bytesArr) {
var s = "";
- for (var i = 0, ii = bytes.length; i < ii; ++i)
- s += String.fromCharCode(bytes[i]);
+ for (var i = 0, ii = bytesArr.length; i < ii; ++i)
+ s += String.fromCharCode(bytesArr[i]);
return s;
}
};