Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
  
     Copyright 2001,2003  The Apache Software Foundation 
  
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
  
         http://www.apache.org/licenses/LICENSE-2.0
 
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
 
  */
 package org.apache.batik.svggen.font.table;
 

Author(s):
David Schweinsberg
Version:
$Id: GsubTable.java,v 1.4 2004/08/18 07:15:21 vhardy Exp $
 
 public class GsubTable implements TableLookupSubtableFactory {
 
     private ScriptList scriptList;
     private FeatureList featureList;
     private LookupList lookupList;
     
     protected GsubTable(DirectoryEntry deRandomAccessFile rafthrows IOException {
         raf.seek(de.getOffset());
 
         // GSUB Header
         /* int version = */     raf.readInt();
         int scriptListOffset  = raf.readUnsignedShort();
         int featureListOffset = raf.readUnsignedShort();
         int lookupListOffset  = raf.readUnsignedShort();
 
         // Script List
          = new ScriptList(rafde.getOffset() + scriptListOffset);
 
         // Feature List
          = new FeatureList(rafde.getOffset() + featureListOffset);
         
         // Lookup List
          = new LookupList(rafde.getOffset() + lookupListOffsetthis);
     }

    
1 - Single - Replace one glyph with one glyph 2 - Multiple - Replace one glyph with more than one glyph 3 - Alternate - Replace one glyph with one of many glyphs 4 - Ligature - Replace multiple glyphs with one glyph 5 - Context - Replace one or more glyphs in context 6 - Chaining - Context Replace one or more glyphs in chained context
 
     public LookupSubtable read(int typeRandomAccessFile rafint offset)
     throws IOException {
         LookupSubtable s = null;
         switch (type) {
         case 1:
             s = SingleSubst.read(rafoffset);
             break;
         case 2:
 //            s = MultipleSubst.read(raf, offset);
             break;
         case 3:
 //            s = AlternateSubst.read(raf, offset);
             break;
         case 4:
             s = LigatureSubst.read(rafoffset);
             break;
         case 5:
 //            s = ContextSubst.read(raf, offset);
             break;
         case 6:
 //            s = ChainingSubst.read(raf, offset);
             break;
         }
         return s;
     }

    
Get the table type, as a table directory value.

Returns:
The table type
 
     public int getType() {
         return ;
     }
 
     public ScriptList getScriptList() {
         return ;
     }
 
     public FeatureList getFeatureList() {
         return ;
    }
    public LookupList getLookupList() {
        return ;
    }
    public String toString() {
        return "GSUB";
    }
New to GrepCode? Check out our FAQ X