/// <summary> /// Read image file /// </summary> /// <param name="aFile">File name</param> ///<returns>image layer</returns> public static ImageLayer ReadImageFile(string aFile) { string oEx = Path.GetExtension(aFile); string sEx = oEx.Remove(2, 1); sEx = sEx + "w"; string wFile = aFile.Replace(oEx, sEx); Image aImage = new Bitmap(aFile); ImageLayer aImageLayer = new ImageLayer(); aImageLayer.FileName = aFile; aImageLayer.WorldFileName = wFile; aImageLayer.Image = aImage; aImageLayer.LayerName = Path.GetFileName(aFile); aImageLayer.Visible = true; if (File.Exists(wFile)) { aImageLayer.ReadImageWorldFile(wFile); } else { WorldFilePara aWFP = new WorldFilePara(); aWFP.XUL = 0; aWFP.YUL = 90; aWFP.XScale = 0.05; aWFP.YScale = -0.05; aWFP.XRotate = 0; aWFP.YRotate = 0; aImageLayer.WorldFileParaV = aWFP; aImageLayer.WriteImageWorldFile(wFile, aImageLayer.WorldFileParaV); } double XBR, YBR; XBR = aImageLayer.Image.Width * aImageLayer.WorldFileParaV.XScale + aImageLayer.WorldFileParaV.XUL; YBR = aImageLayer.Image.Height * aImageLayer.WorldFileParaV.YScale + aImageLayer.WorldFileParaV.YUL; Extent aExtent = new Extent(); aExtent.minX = aImageLayer.WorldFileParaV.XUL; aExtent.minY = YBR; aExtent.maxX = XBR; aExtent.maxY = aImageLayer.WorldFileParaV.YUL; aImageLayer.Extent = aExtent; aImageLayer.LayerDrawType = LayerDrawType.Image; aImageLayer.IsMaskout = true; return(aImageLayer); }