googlefonts / fontdiffenator

Font comparison tool
Apache License 2.0
81 stars 13 forks source link

how does sfntdiff compare to fontdiffentator? #22

Open davelab6 opened 6 years ago

davelab6 commented 6 years ago

@m4rc1e how does sfntdiff compare to fontdiffentator?

https://github.com/adobe-type-tools/afdko/issues/626 shows it is under active development...

m4rc1e commented 6 years ago

Just had a quick skim through the source so my summary may not be 100% accurate.

I'll keep an eye on this since this tool is rather slow.

davelab6 commented 6 years ago

@miguelsousa I wonder if fontdiffentator might feature into the future of sfntdiff :)

miguelsousa commented 6 years ago

sfntdiff is really basic. For most tables it doesn't give any intelligible insight into the specifics of the differences, even when ran using its highest level of detail:

sfntdiff (2.21217) (-d 4)  files:
< /2.038/SourceSansPro-Black.otf
> /2.040/SourceSansPro-Black.otf
< 'CFF ' table checksum=89eaeff9
> 'CFF ' table checksum=0dbf6cfb
< 'CFF ' table length=0001f214
> 'CFF ' table length=0001f0a5
< 'GDEF' table checksum=fd7602b5
> 'GDEF' table checksum=f721fb92
< 'GDEF' table length=00000392
> 'GDEF' table length=0000038c
< 'GPOS' table checksum=f4e3c679
> 'GPOS' table checksum=87dfe8be
< 'GPOS' table length=00015888
> 'GPOS' table length=00015a8e
< 'GSUB' table checksum=5767122c
> 'GSUB' table checksum=85444310
< 'GSUB' table length=000051ec
> 'GSUB' table length=00005228
< 'OS/2' table checksum=5fdcd89e
> 'OS/2' table checksum=5fdcd89f
< 'cmap' table checksum=942b167c
> 'cmap' table checksum=9fce01f4
< 'cmap' table length=000036b6
> 'cmap' table length=000036c2
< 'head' table checksum=155def76
> 'head' table checksum=15788b7d
< 'hhea' table checksum=0a7d0d7f
> 'hhea' table checksum=0a7d0d74
< 'hmtx' table checksum=3381bab4
> 'hmtx' table checksum=20edb966
< 'hmtx' table length=00001f04
> 'hmtx' table length=00001ed8
< 'maxp' table checksum=07c15000
> 'maxp' table checksum=07b65000
< 'name' table checksum=60e5237b
> 'name' table checksum=60d5237f
'CFF ' differs.
'GDEF' differs.
'GPOS' differs.
'GSUB' differs.
'OS/2' differs.
'cmap' differs.
< head fontRevision=2.0 (000209ba)
> head fontRevision=2.0 (00020a3d)
< head checkSumAdjustment=b8f7ce48
> head checkSumAdjustment=4a273395
< head created=0000d7d1d111 (Thu Sep 27 00:13:05 2018)
> head created=0000d7df1ed3 (Sun Oct 07 02:24:19 2018)
< head modified=0000d7d1d111 (Thu Sep 27 00:13:05 2018)
> head modified=0000d7df1ed3 (Sun Oct 07 02:24:19 2018)
'hhea' differs.
'hmtx' differs.
'maxp' differs.
< name record[ 3]={platformId= 3, scriptId= 1, languageId= 409, nameId=   3, length=  72, offset=00fe} [Microsoft,Unicode,English(American),UniqueId] "2.038;ADBO;SourceSansPro-Black;ADOBE"
> name record[ 3]={platformId= 3, scriptId= 1, languageId= 409, nameId=   3, length=  72, offset=00fe} [Microsoft,Unicode,English(American),UniqueId] "2.040;ADBO;SourceSansPro-Black;ADOBE"
< name record[ 5]={platformId= 3, scriptId= 1, languageId= 409, nameId=   5, length= 100, offset=0146} [Microsoft,Unicode,English(American),Version] "Version 2.038;hotconv 1.0.109;makeotfexe 2.5.65594"
> name record[ 5]={platformId= 3, scriptId= 1, languageId= 409, nameId=   5, length= 100, offset=0146} [Microsoft,Unicode,English(American),Version] "Version 2.040;hotconv 1.0.109;makeotfexe 2.5.65596"
davelab6 commented 6 years ago

sfntdiff is really basic

Right :) So, I wonder if you/the afdko team may find fontdiffentator a relevant package to depend on in the future for extending sfntdiff functionality :)

miguelsousa commented 6 years ago

We have no plans to extend sfntdiff. I'll look into fontdiffentator some day.