Наследование: AbstractCMap
Пример #1
0
 public static CMapCidUni GetCachedCMapCidUni(String name) {
     CMapCidUni cmap = null;
     lock (cacheCidUni) {
         cacheCidUni.TryGetValue(name, out cmap);
     }
     if (cmap == null) {
         cmap = new CMapCidUni();
         CMapParserEx.ParseCid(name, cmap, new CidResource());
         lock (cacheCidUni) {
             cacheCidUni[name] = cmap;
         }
     }
     return cmap;
 }
Пример #2
0
        public static CMapCidUni GetCachedCMapCidUni(String name)
        {
            CMapCidUni cmap = null;

            lock (cacheCidUni) {
                cacheCidUni.TryGetValue(name, out cmap);
            }
            if (cmap == null)
            {
                cmap = new CMapCidUni();
                CMapParserEx.ParseCid(name, cmap, new CidResource());
                lock (cacheCidUni) {
                    cacheCidUni[name] = cmap;
                }
            }
            return(cmap);
        }
Пример #3
0
        private void InitFont() {
            ProcessToUnicode();
            //if (toUnicodeCmap == null)
                ProcessUni2Byte();
            
            spaceWidth = base.GetWidth(' ');
            if (spaceWidth == 0){
                spaceWidth = ComputeAverageWidth();
            }
            if (cjkEncoding != null) {
                byteCid = CMapCache.GetCachedCMapByteCid(cjkEncoding);
                cidUni = CMapCache.GetCachedCMapCidUni(uniMap);
            }

        }
Пример #4
0
 private void LoadCMaps() {
     try {
         fontDesc = allFonts[fontName];
         hMetrics = (IntHashtable)fontDesc["W"];
         vMetrics = (IntHashtable)fontDesc["W2"];
         String registry = (String)fontDesc["Registry"];
         uniMap = "";
         foreach (String name in registryNames[registry + "_Uni"].Keys) {
             uniMap = name;
             if (name.EndsWith("V") && vertical)
                 break;
             if (!name.EndsWith("V") && !vertical)
                 break;
         }
         if (cidDirect) {
             cidUni = CMapCache.GetCachedCMapCidUni(uniMap);
         }
         else {
             uniCid = CMapCache.GetCachedCMapUniCid(uniMap);
             cidByte = CMapCache.GetCachedCMapCidByte(CMap);
         }
     }
     catch (Exception ex) {
         throw new DocumentException(ex.Message);
     }
 }