Use Type3 fonts for platforms that don't yet support SkFontHost::GetAdvancedTypefaceMetrics.

Review URL: http://codereview.appspot.com/4273041

git-svn-id: http://skia.googlecode.com/svn/trunk@922 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/include/pdf/SkPDFFont.h b/include/pdf/SkPDFFont.h
index 8bdc51c..ba316e8 100644
--- a/include/pdf/SkPDFFont.h
+++ b/include/pdf/SkPDFFont.h
@@ -120,7 +120,7 @@
 
     void populateType0Font();
     void populateCIDFont();
-    bool populateType1Font();
+    bool populateType1Font(int16_t glyphID);
 
     /** Populate the PDF font dictionary as Type3 font which includes glyph
      *  descriptions with instructions for painting the glyphs. This function
@@ -128,10 +128,14 @@
      *  information including glyph paths are queried from the platform
      *  dependent SkGlyphCache.
     */
-    void populateType3Font();
+    void populateType3Font(int16_t glyphID);
     bool addFontDescriptor(int16_t defaultWidth);
     void addWidthInfoFromRange(int16_t defaultWidth,
         const SkAdvancedTypefaceMetrics::WidthRange* widthRangeEntry);
+    /** Set fFirstGlyphID and fLastGlyphID to span at most 255 glyphs,
+     *  including the passed glyphID.
+     */
+    void adjustGlyphRangeForSingleByteEncoding(int16_t glyphID);
 
     static bool find(uint32_t fontID, uint16_t glyphID, int* index);
 };