示例#1
0
        private static IPictureMarkerSymbol MakeMarkerSymbol(string renderPath, string icon, int size, int display, bool isVector)
        {
            esriIPictureType picType       = (isVector) ? esriIPictureType.esriIPictureEMF : esriIPictureType.esriIPicturePNG;
            string           extrafileName = (display == 2) ? "@2x" : "";
            string           suffix        = (picType == esriIPictureType.esriIPictureEMF) ? ".emf" : ".png";

            IPictureMarkerSymbol pictureMarkerSymbol = new PictureMarkerSymbolClass();

            pictureMarkerSymbol.CreateMarkerSymbolFromFile(picType, renderPath + "\\" + icon + "-" + size + extrafileName + suffix);
            pictureMarkerSymbol.Size = (((Double)size / 96.0) * 72.0); //so it is 1to1 at 96 dpi or twize that for retina
            return(pictureMarkerSymbol);
        }
示例#2
0
        private static IPictureMarkerSymbol MakeMarkerSymbol(string filePath, double size)
        {
            if (!System.IO.File.Exists(filePath))
            {
                Console.WriteLine("Source MarkerSymbol does NOT exist: " + filePath);
                return(null);
            }

            bool             isVector = (filePath.Substring(filePath.Length - 4) == ".emf");
            esriIPictureType picType  = (isVector) ? esriIPictureType.esriIPictureEMF : esriIPictureType.esriIPicturePNG;

            IPictureMarkerSymbol pictureMarkerSymbol = new PictureMarkerSymbolClass();

            pictureMarkerSymbol.CreateMarkerSymbolFromFile(picType, filePath);
            pictureMarkerSymbol.Size = size;
            return(pictureMarkerSymbol);
        }
示例#3
0
        /// <summary>
        /// 设置图片类型
        /// </summary>
        /// <param name="url"></param>
        private void SetPictureType(string url)
        {
            int    index   = url.LastIndexOf('.');
            int    count   = url.Length - 1 - index;
            string picType = url.Substring(index + 1, count).ToLower();

            switch (picType)
            {
            case "bmp":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureBitmap, url);
                pictureType = esriIPictureType.esriIPictureBitmap;
                break;

            case "emf":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureEMF, url);
                pictureType = esriIPictureType.esriIPictureEMF;
                break;

            case "gif":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureGIF, url);
                pictureType = esriIPictureType.esriIPictureGIF;
                break;

            case "jpg":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureJPG, url);
                pictureType = esriIPictureType.esriIPictureJPG;
                break;

            case "jpeg":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPictureJPG, url);
                pictureType = esriIPictureType.esriIPictureJPG;
                break;

            case "png":
                pictureMarkerSymbol.CreateMarkerSymbolFromFile(esriIPictureType.esriIPicturePNG, url);
                pictureType = esriIPictureType.esriIPicturePNG;
                break;
            }
        }