Code Monkey home page Code Monkey logo

sfntly's Introduction

sfntly

This project is not developed any further. Only Bug fixes will be merged, but new features won't.

sfntly's People

Contributors

anthrotype avatar arthurhsu avatar atetubou avatar behdad avatar cibu avatar davelab6 avatar dougfelt avatar garretrieger avatar gvictor avatar halcanary avatar hhb avatar inbreaks avatar jfkthame avatar jungshik avatar kuanyili avatar leizleiz avatar raphlinus avatar rillig avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sfntly's Issues

Font Checksum is Wrong

What steps will reproduce the problem?
1. Open a font for editing.
2. Edit the font.
3. Serialize

What is the expected output? What do you see instead?

The checksum for the serialized font is incorrect when read.


Original issue reported on code.google.com by [email protected] on 9 Dec 2011 at 7:41

Reorganize Non-Library Code

Reorganize the non-library code (tools, sample, etc.) to sit outside of the 
hierarchy of the library source code. So, have java/src, java/sample, 
java/tools, etc. This will simplify the build system and make it easier to keep 
the various pieces from interacting in unintended ways.

Original issue reported on code.google.com by [email protected] on 24 Jan 2012 at 9:19

javadoc fails on LocaTable.java

c:\sfntly-r151\java>ant -f javadoc.xml
...
  [javadoc] Loading source files for package com.google.typography.font.sfntly.t
able.core...
  [javadoc] c:\sfntly-r151\java\src\com\goog
le\typography\font\sfntly\table\truetype\LocaTable.java:107: unmappable characte
r for encoding Cp1252
  [javadoc]    * @return the loca table value├?
  [javadoc]                                   ^
  [javadoc] c:\sfntly-r151\java\src\com\goog
le\typography\font\sfntly\table\truetype\LocaTable.java:389: unmappable characte
r for encoding Cp1252
  [javadoc]      * @return the loca table value├?
...
  [javadoc] 2 errors
...

java/build/javadoc folder is left empty.

LocaTable.java (obtained by exporting r151 with svn) has indeed stray 
characters at the end of lines 107 and 389 that prevents javadoc from running. 
These characters are also shown in Web source browsing as I acute. 
Removing those two characters lets javadoc run to completion.

Original issue reported on code.google.com by [email protected] on 21 Mar 2013 at 1:23

Multiple References to Sub-tables cause multiple sub-tables to be created on serialization

What steps will reproduce the problem?
1. Open a font for editing.
2. Edit a table that has multiple references to the same subtable. e.g. cmap 
table that has 2 or more references to the same cmap subtable - Mac and Windows 
encoding records point to same format 4 subtable
3. Serialize the font

What is the expected output? What do you see instead?

There should only be one subtable in the serialized font instead of two. Need 
to have a way to separate them for editing separately but also a way to keep 
them together.

This issue applies to other subtables in other tables too.


Original issue reported on code.google.com by [email protected] on 9 Dec 2011 at 7:48

No newline at end of file

clang warns:

third_party/sfntly/src/sfntly/table/subtable_container_table.h:48:79: warning: 
no newline at end of file [-pedantic,-Wnewline-eof]
#endif  // TYPOGRAPHY_FONT_SFNTLY_SRC_SFNTLY_TABLE_SUBTABLE_CONTAINER_TABLE_H_
                                                                              ^

You should set chromium_code in sfntly's gyp file to enable warnings-as-errors 
for sfntly. It looks mostly clean, and that will make sure you don't regress.

Original issue reported on code.google.com by [email protected] on 13 Oct 2011 at 9:51

Can't compile under openjdk-6 6b35-1.13.7-1ubuntu1

reedy@ubuntu64-web-esxi:~/sfntly-read-only/java$ ant
Buildfile: /home/reedy/sfntly-read-only/java/build.xml

compile:
    [mkdir] Created dir: /home/reedy/sfntly-read-only/java/build/classes
    [javac] Compiling 200 source files to /home/reedy/sfntly-read-only/java/build/classes
    [javac] /home/reedy/sfntly-read-only/java/src/com/google/typography/font/sfntly/sample/sfview/OtTableTagger.java:128: cannot find symbol
    [javac] symbol  : class SafeVarargs
    [javac] location: class com.google.typography.font.sfntly.sample.sfview.OtTableTagger
    [javac]   @SafeVarargs
    [javac]    ^
    [javac] Note: /home/reedy/sfntly-read-only/java/src/com/google/typography/font/sfntly/sample/sfview/OtTableTagger.java uses unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 1 error

BUILD FAILED
/home/reedy/sfntly-read-only/java/common.xml:21: Compile failed; see the 
compiler error output for details.

Total time: 14 seconds
reedy@ubuntu64-web-esxi:~/sfntly-read-only/java$ javac -version
javac 1.6.0_35
reedy@ubuntu64-web-esxi:~/sfntly-read-only/java$ java -version
java version "1.6.0_35"
OpenJDK Runtime Environment (IcedTea6 1.13.7) (6b35-1.13.7-1ubuntu1)
OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)
reedy@ubuntu64-web-esxi:~/sfntly-read-only/java$ dpkg -l | grep jdk-6
ii  openjdk-6-jdk:amd64                  6b35-1.13.7-1ubuntu1                
amd64        OpenJDK Development Kit (JDK)
ii  openjdk-6-jre:amd64                  6b35-1.13.7-1ubuntu1                
amd64        OpenJDK Java runtime, using Hotspot JIT
ii  openjdk-6-jre-headless:amd64         6b35-1.13.7-1ubuntu1                
amd64        OpenJDK Java runtime, using Hotspot JIT (headless)
ii  openjdk-6-jre-lib                    6b35-1.13.7-1ubuntu1                
all          OpenJDK Java runtime (architecture independent libraries)
reedy@ubuntu64-web-esxi:~/sfntly-read-only/java$



Seemed to work fine on openjdk-6 6b33-1.13.5-1ubuntu1

Original issue reported on code.google.com by [email protected] on 9 May 2015 at 10:22

JDK7 Compile Issues

Compiling with JDK7 results in errors.

$ ant
Buildfile: build.xml

compile:
    [mkdir] Created dir: /home/xxx/src/sfntly/java/build/classes
    [javac] Compiling 104 source files to /home/xxx/src/sfntly/java/build/classes
    [javac] /home/xxx/src/sfntly/java/src/com/google/typography/font/sfntly/table/Table.java:169: error: header has private access in Table
    [javac]         table.header = header;
    [javac]              ^
    [javac] 1 error

Original issue reported on code.google.com by [email protected] on 6 Nov 2012 at 9:31

Document Table Hierarchy Signaling

Document the signaling through the table hierarchy during the build process and 
other situations. This will be useful to those implementing table classes.

Original issue reported on code.google.com by [email protected] on 25 Jan 2012 at 1:05

Chrome & Android Browser "OTS parsing error"

Some ttf file parsing errors after sfntly processed into browsers will happen.

java -jar sfntly.jar -s "abc" foo.ttf new.ttf

Chrome & Android Browser use new.ttf ---> console

OTS parsing error: vhea: Failed to parse metrics in vhea

download foo.ttf

Renumbering subsetter should support more cmap formats

The renumbering subsetter only reads format 4 cmaps. This is a limitation in 
computeMapping in the RenumberingCMapTableSubsetter.

Currently there is only a builder for format 4 cmaps, so I'd expect sfntly to 
support all 16-bit cmaps and just write them out as format 4, yet it doesn't. 
It should also honour the Subsetter's cmapId() list.

For 32-bit cmaps a format 12 builder is needed.

Original issue reported on code.google.com by [email protected] on 7 Oct 2013 at 9:17

loadFontsForBuilding from FileInputStream does not work correctly

Sample code:

FontFactoryPtr factory = FontFactory::getInstance();
FontBuilderArray font_builder_array;
FileInputStream is;
is.open("arial.ttf");
factory->loadFontsForBuilding(&is, builders);
FontBuilderPtr font_builder = font_builder_array[0];
FontPtr font = font_builder->build();
MemoryOutputStream output_stream;
factory->serializeFont(font, &output_stream);

Expected result:
output_stream shall have same size as input file.

Actual result:
output_stream is corrupted.

Original issue reported on code.google.com by [email protected] on 7 Jul 2011 at 10:48

Build on OpenJDK 7 is broken

What steps will reproduce the problem?
0. svn checkout
1. cd java
2. ant

~/sfntly-read-only/java$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.12.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

~/sfntly-read-only/java$ ant
Buildfile: /sfntly-read-only/java/build.xml

compile:
    [javac] Compiling 201 source files to /sfntly-read-only/java/build/classes
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/table/opentype/component/VisibleBuilder.java:8: error: Builder has protected access in SubTable
    [javac]   class VisibleBuilder<T extends SubTable> extends SubTable.Builder<T> {
    [javac]                                                            ^
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/sample/sfview/RuleDump.java:26: error: method charGlyphClosure in class Rule cannot be applied to given types;
    [javac]     GlyphGroup ruleClosure = Rule.charGlyphClosure(txt, font);
    [javac]                                  ^
    [javac]   required: Font,String
    [javac]   found: String,Font
    [javac]   reason: actual argument String cannot be converted to Font by method invocation conversion
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/table/opentype/component/VisibleBuilder.java:20: error: method does not override or implement a method from a supertype
    [javac]     @Override
    [javac]     ^
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/table/opentype/component/VisibleBuilder.java:23: error: method does not override or implement a method from a supertype
    [javac]     @Override
    [javac]     ^
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/table/opentype/component/VisibleBuilder.java:26: error: method does not override or implement a method from a supertype
    [javac]     @Override
    [javac]     ^
    [javac] /sfntly-read-only/java/src/com/google/typography/font/sfntly/table/opentype/component/VisibleBuilder.java:29: error: method does not override or implement a method from a supertype
    [javac]     @Override
    [javac]     ^
    [javac] 6 errors

BUILD FAILED
/sfntly-read-only/java/common.xml:21: Compile failed; see the compiler error 
output for details.

Total time: 12 seconds

Original issue reported on code.google.com by [email protected] on 18 Jan 2014 at 8:36

Main method not found while running eotconverter

I've never used sfntly before so there's a good chance this is user error, but Dave Crossland thought someone here might be able to help.

After a succesful ant build of sfntly, I tried the following:

$ cd cd /Users/david/Documents/Tools/fontGenerate/sfntly
$ java -jar java/dist/tools/conversion/eot/eotconverter.jar /Users/david/Desktop/test/Bungee-Regular.ttf

I get the error:

Error: Main method not found in class com.google.typography.font.tools.conversion.eot.EOTWriter, please define the main method as:
public static void main(String[] args)

Running in Terminal.app with Java 1.7.0_51 on Mac 10.10.3.

Thanks for whatever advice you may be able to give!

quickstart.txt

quickstart.txt? WTF? Rename it to Quickstart_for_Java_or_C_or_whatever_developers_only.txt or write a new one, please.

Sorry, but I really don't understand this. You invest much time in developing tool packages like this, but you obviously hate users, that aren't developers. Or you simply don't know, that those users exist.

Remove Font.Builder Table builder factory method

Remove the Font.Builder.newTableBuilder() factory methods. Ensure that every 
concrete Table.Builder subclass has appropriate Factory methods.

This will clean up the code and remove unnecessary generic-ness and unsafe 
conversions.

Original issue reported on code.google.com by [email protected] on 25 Jan 2012 at 2:19

Inconsistent behaviour in reading a font from a byte array vs input stream

What steps will reproduce the problem?
1. Run the attached class with either 'byte' or 'filestream' as input parameters
2. Compare the output for each case

What is the expected output? What do you see instead?
There behaviour should be consistent, independent of how the font was loaded.

What version of the product are you using? On what operating system?
r147, Windows XP

Please provide any additional information below.
When calling Glyph.xMin() for glyph id 1012 (corresponding to U+0020/SPACE for 
the attached font), an IndexOutOfBounds exception will be thrown iff loaded 
from a file input stream. This is not observed if loaded from a byte array.

Original issue reported on code.google.com by [email protected] on 26 Jan 2013 at 3:12

Attachments:

QNX build is broken

When building on QNX, the build is broken.

sfntly uses "#include <cstddef>" to get size_t, but that only puts size_t in 
the std:: namespace with the strict library on QNX.

Original issue reported on code.google.com by [email protected] on 29 Oct 2013 at 6:02

C++ inline methods in nested classes break with -fPIC and gcc

There are some inline methods in nested classes. These break when sfntly is 
compiled with gcc using -fPIC (for creation of a shared library). The methods 
return incorrect results, which can lead to generation of corrupted 
fonts/segfaults/etc.

Here is a patch that fixes this for the loca table (there may be other places 
that exhibit this issue, but this is the only one that impacted me, so far).

http://bazaar.launchpad.net/~kovid/calibre/trunk/revision/13579

Original issue reported on code.google.com by [email protected] on 30 Oct 2012 at 6:10

OS2Table Incorrect setter for usLastCharIndex

What steps will reproduce the problem?
1. Call setUsLastCharIndex(int lastIndex) with some value

What is the expected output? What do you see instead?
Expect to set usLastCharIndex. Sets usFirstCharIndex instead

What version of the product are you using? On what operating system?
r147, Java Windows

Please provide any additional information below.
The setter should use Offset.usLastCharIndex.offset and not 
Offset.usFirstCharIndex.offset (in OS2Table.java)

Original issue reported on code.google.com by [email protected] on 26 Oct 2012 at 12:46

Proposed build instructions not working on Mac OS X 10.10

Both the make and make lines will produce errors on OS X (tested on Yosemite). 
If you run `cmake ..` from within build, you get: `CMake Error: The source 
directory "/Applications/sfntly" does not appear to contain CMakeLists.txt.`

sfntly Revision 239 on OS X 10.10 (14A389)

Here is what I did:
svn checkout http://sfntly.googlecode.com/svn/trunk/ /Applications/sfntly/
cd /Applications/sfntly/
mkdir build
cd build
cmake ..

Then I get the error. If I continue with …

cmake ../cpp

… but then I get this output:

-- The C compiler identification is AppleClang 6.0.0.6000054
-- The CXX compiler identification is AppleClang 6.0.0.6000054
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
CMake Error at CMakeLists.txt:84 (add_executable):
  Cannot find source file:
    ext/gtest/src/gtest-all.cc
  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
-- Build files have been written to: /Applications/sfntly/build

Then I get this error from `make`:

make: *** No targets specified and no makefile found.  Stop.

Original issue reported on code.google.com by [email protected] on 3 Nov 2014 at 3:38

Function OS2Table.setUsWinDescent() sets usWinAscent instead

What steps will reproduce the problem?
1. Reading the source code of the method OS2Table.setUsWinDescent(). The error 
is obvious (probably a copy/paste error)
2.
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.
The attached patch fixes the problem.


Original issue reported on code.google.com by [email protected] on 2 Sep 2013 at 3:48

Attachments:

Hard crash (java OOM error) on corrupt input

What steps will reproduce the problem?
1. Open corrupt font (for example, in SFD format) with stream-based method such 
as loadFonts(InputStream).

What is the expected output? What do you see instead?

Expected result: exception of some sort indicating corrupt font

Actual result:

java.lang.OutOfMemoryError: Java heap space
    at com.google.typography.font.sfntly.data.MemoryByteArray.<init>(MemoryByteArray.java:37)
    at com.google.typography.font.sfntly.data.WritableFontData.createWritableFontData(WritableFontData.java:43)
    at com.google.typography.font.sfntly.Font$Builder.loadTableData(Font.java:951)
    at com.google.typography.font.sfntly.Font$Builder.loadFont(Font.java:629)
    at com.google.typography.font.sfntly.Font$Builder.getOTFBuilder(Font.java:648)
    at com.google.typography.font.sfntly.FontFactory.loadSingleOTFForBuilding(FontFactory.java:181)
    at com.google.typography.font.sfntly.FontFactory.loadSingleOTF(FontFactory.java:158)
    at com.google.typography.font.sfntly.FontFactory.loadFonts(FontFactory.java:133)

Please use labels and text to provide additional information.

Original issue reported on code.google.com by [email protected] on 9 Feb 2012 at 7:41

Attachments:

Index OO Bounds when adding/changing the last written name in the name table to a zero length name

What steps will reproduce the problem?
1. Add a name to the fonts name table that will sort at the end of the list.
2. Save the font.

What is the expected output? What do you see instead?

Font should save but instead an Index Out of Bounds exception is thrown.

Code snippet:


    FontFactory fontFactory = FontFactory.getInstance();
    File fontFile = TestFont.TestFontNames.OPENSANS.getFile();
    Font.Builder fontBuilder = fontFactory.loadFontsForBuilding(new FileInputStream(fontFile))[0];
    NameTable.Builder nameTableBuilder = (NameTable.Builder) fontBuilder.getTableBuilder(Tag.name);
    nameTableBuilder.nameBuilder(Font.PlatformId.Windows.value(),
        Font.WindowsEncodingId.UnicodeUCS4.value(), 
        NameTable.WindowsLanguageId.Spanish_UnitedStates.value(),
        NameTable.NameId.WWSSubfamilyName.value()).setName("");
    Font font = fontBuilder.build(); // exception occurs here.

Original issue reported on code.google.com by [email protected] on 15 Jan 2013 at 11:26

Break Apart Nested Class Structure

Existing nested class structure on a number of the table classes needs to be 
expanded out into a flatter structure. Examples of such classes are CMapTable 
and GlyphTable.

This is a holdover from an earlier design.

Original issue reported on code.google.com by [email protected] on 9 Dec 2011 at 7:57

Code review request

Branch name: 128

Purpose of code changes on this branch: workaround Apple font bug



Original issue reported on code.google.com by [email protected] on 28 Feb 2012 at 3:21

Index attempted to be read from is out of bounds: 4e

Using font from http://img.dafont.com/dl/?f=escapeviawindow and passing it 
through the java sfnttool tool, it fails when trying to make an eot file

reedy@ubuntu64-web-esxi:/var/www/wiki/mediawiki/extensions/UniversalLanguageSele
ctor/data/fontrepo/fonts/EscapeViaWindow$ java -jar 
/home/reedy/sfntly-builds/java-openjdk-7/sfnttool/sfnttool.jar -e -h -x 
EscapeViaWindow.ttf EscapeViaWindow.eot
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index attempted 
to be read from is out of bounds: 4e
        at com.google.typography.font.sfntly.data.ReadableFontData.readUByte(Unknown Source)
        at com.google.typography.font.sfntly.data.ReadableFontData.readULong(Unknown Source)
        at com.google.typography.font.sfntly.table.core.OS2Table.ulCodePageRange1(Unknown Source)
        at com.google.typography.font.tools.conversion.eot.EOTWriter.writeCodePages(Unknown Source)
        at com.google.typography.font.tools.conversion.eot.EOTWriter.convert(Unknown Source)
        at com.google.typography.font.tools.sfnttool.SfntTool.subsetFontFile(Unknown Source)
        at com.google.typography.font.tools.sfnttool.SfntTool.main(Unknown Source)

Original issue reported on code.google.com by [email protected] on 15 Dec 2013 at 7:07

add maven support and deploy 2 central

Hi,

I'm a member of project https://code.google.com/p/xdocreport/.

This is a set of java libs that enable templating in docx/ odt and allows to 
export to PDF the merged content.

We deploy our jars to central maven repo : 
http://search.maven.org/#search%7Cga%7C1%7Cxdocreport.

We want to make a "Google App Engine" extension of our libs and we need a 
dependency on your lib (sfntly-java).

Unfortunatly, sfntly-jaa cannot be found on central maven repo.

If you are interested I worked on a fork of the project  
https://github.com/pascalleclercq/sfntly-java 
in order to "mavenize" It : I may commit my work on your repo.

best regards

Original issue reported on code.google.com by pascal.leclercq on 18 Mar 2013 at 1:48

Integrate External Table Builders into the Main Code

There are external table builders in the subsetter code that need to be 
integrated into the code for the table they are building. Examples of these are 
HorizontalMetricsTableBuilder and PostScriptTableBuilder. Having these as 
external makes them more difficult to use and to keep up to date with core code 
changes.

Original issue reported on code.google.com by [email protected] on 10 Jan 2012 at 1:26

NameTable iteration breaks on some fonts

Some fonts have name table entries where the name bytes field is empty (zero 
length), and additionally has the index to the entry equal to the bounds of the 
name table.

Extra bounds checking introduced with r155 causes sfntly to crash on such 
entries with an IndexOutOfBounds exception. I believe that in this case, such 
entries are valid (since the length is zero) and sfntly should not throw an 
exception.

Original issue reported on code.google.com by [email protected] on 10 Jul 2013 at 4:22

Attachments:

C++ Tables (font and cmap) in wrong order

OTS santizer rejected fonts serialized by C++ library because wrong order of 
font tables. And because of wrong ordered cmap tables.

This font could not be loaded in web browser (except IE) after I changed 
comparator classes it started to work.

Jan Hruby

Original issue reported on code.google.com by [email protected] on 28 Jan 2013 at 6:44

Font with Bad CMap Format 4 Causes Exception

What steps will reproduce the problem?
1. Using SfntTool to subset font bl-norm.ttf
2. Get exception


Hi,
I was testing out using the sfnttool to subset a font, and I came across this 
error:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index attempted
to be read from is out of bounds: 100f5
        at com.google.typography.font.sfntly.data.ReadableFontData.readUByte(Unknown Source)
        at com.google.typography.font.sfntly.data.ReadableFontData.readUShort(Unknown Source)
        at com.google.typography.font.sfntly.table.core.CMapFormat4.retrieveGlyphId(Unknown Source)
        at com.google.typography.font.sfntly.table.core.CMapFormat4.glyphId(Unknown Source)
        at com.google.typography.font.tools.subsetter.RenumberingCMapTableSubsetter.computeMapping(Unknown Source)
        at com.google.typography.font.tools.subsetter.RenumberingCMapTableSubsetter.subset(Unknown Source)
        at com.google.typography.font.tools.subsetter.Subsetter.subset(Unknown Source)
        at com.google.typography.font.tools.sfnttool.SfntTool.subsetFontFile(Unknown Source)
        at com.google.typography.font.tools.sfnttool.SfntTool.main(Unknown Source)

I was wondering what could be causing this error? I have attached the font 
involved.

Original issue reported on code.google.com by [email protected] on 27 Aug 2012 at 5:43

Attachments:

Incorrect font checksum calculation

What steps will reproduce the problem?
1. Load any font for building
2. Build it
3. Observe the checksum adjustment value in the 'head' table

What is the expected output? What do you see instead?
A valid checksum adjustment is expected - an invalid one is seen instead, 
verifiable through using Microsoft's font validator.

What version of the product are you using? On what operating system?
r147, Java version on Windows XP

Please provide any additional information below.
I think the issue is that when the font checksum is calculated in 
buildTablesFromBuilders, it does not include checksumming the offset table. 
From http://support.microsoft.com/kb/102354, the whole file including the 
offset table (except for the checksum adjustment field) has to be included in 
the checksum, which is not done in sfntly (the offset table is only produced on 
serialization)

Original issue reported on code.google.com by [email protected] on 26 Oct 2012 at 6:22

Missing utility function to compute OS-2 unicode range bits from unicode values

What steps will reproduce the problem?
1.
2.
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.
This is an enhancement suggestion (is there a "new enhacement" hidden somewhere 
that I missed?).
The attached patch provides a class to compute the bits.


Original issue reported on code.google.com by [email protected] on 2 Sep 2013 at 4:13

Attachments:

Function Fontinfo.listGlyphDimensionBounds() can fail with an ArrayIndexOutOfBoundsException on some fonts

What steps will reproduce the problem?
1. Call the function for a font that has glyphs with no data 
(LocaTable.glyphLength()==0
2.
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.
The attached patch fixes the issue by ignoring such glyphs during computation.


Original issue reported on code.google.com by [email protected] on 2 Sep 2013 at 3:57

Attachments:

Incorrect OS/2 Table unicode and codepage range

For Tuffy.ttf, run subsetter, and use Microsoft ttfdump to observe dumped file. 
 (Microsoft Font Tools can be downloaded from 
http://www.microsoft.com/typography/tools/tools.aspx).

Expected result:

  Unicode Range 1( Bits 0 - 31 ): 80000003
  Unicode Range 2( Bits 32- 63 ): 00000002
  Unicode Range 3( Bits 64- 95 ): 00000000
  Unicode Range 4( Bits 96-127 ): 00000000

  CodePage Range 1( Bits 0 - 31 ): 00000001
  CodePage Range 2( Bits 32- 63 ): 80D40000

Actual result:

  Unicode Range 1( Bits 0 - 31 ): 1800CD1E
  Unicode Range 2( Bits 32- 63 ): 7977C949
  Unicode Range 3( Bits 64- 95 ): 8043FEFF
  Unicode Range 4( Bits 96-127 ): FFFF7A38

  CodePage Range 1( Bits 0 - 31 ): 3F000201
  CodePage Range 2( Bits 32- 63 ): 0000002F

Note: Hex editor reveals that the bytes are written correctly, therefore this 
could be due to invalid byte paddings.

Java version does not have the problem.

Original issue reported on code.google.com by [email protected] on 12 Jul 2011 at 7:55

Incorrect retrieval of xMin, yMin, xMax, and yMax fields in head table

What steps will reproduce the problem?
Using FontHeaderTable methods xMin(), xMax(), yMin(), and yMax().

What is the expected output? What do you see instead?
The aforementioned methods should extract values from the font as signed 
shorts, but extract the values as unsigned shorts instead.

Original issue reported on code.google.com by [email protected] on 7 Aug 2012 at 1:27

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.