public static List <IElement> CreateContentElements(IMultiCheQiConfig multiCheQiConfig, List <MultiCheQiModel> models, IPoint point, double xLength, double yLength) { List <IElement> list = new List <IElement>(); IPoint originPoint = new PointClass { X = point.X, Y = point.Y }; for (int i = 0; i < models.Count; i++) { MultiCheQiModel multiCheQiModel = models[i]; IPoint tempPoint = new PointClass(); tempPoint.X = originPoint.X; tempPoint.Y = originPoint.Y - yLength * (i + 1); string strContent = null; for (int j = 0; j < multiCheQiModel.FieldMappingList.Count; j++) { CheQiFieldMapping mapping = multiCheQiModel.FieldMappingList[j]; strContent += mapping.FieldValue.PadRight(mapping.FieldSetting.Length); } IElement element = CreateTextElement(tempPoint, multiCheQiModel.Color, strContent, multiCheQiConfig.ContentFontConfig); list.Add(element); } return(list); }
public static List <IElement> CreateAnnoElementList(IMultiCheQiConfig multiCheQiConfig, List <MultiCheQiModel> modelList, IPoint point) { List <IElement> list = new List <IElement>(); IElement element = CreateHeaderElements(multiCheQiConfig, point); list.Add(element); list.AddRange(CreateContentElements(multiCheQiConfig, modelList, element.Geometry as IPoint, element.Geometry.Envelope.Width, element.Geometry.Envelope.Height)); return(list); }
public static IElement CreateHeaderElements(IMultiCheQiConfig multiCheQiConfig, IPoint point) { IPoint originPoint = new PointClass { X = point.X, Y = point.Y }; string strHeader = null; for (int i = 0; i < multiCheQiConfig.FieldSettingList.Count; i++) { IFieldSetting fieldSetting = multiCheQiConfig.FieldSettingList[i]; strHeader += fieldSetting.FieldName.PadRight(fieldSetting.Length); } IElement element = CreateTextElement(originPoint, ConvertToRgbColor(multiCheQiConfig.HeaderFontConfig.Color), strHeader, multiCheQiConfig.HeaderFontConfig); return(element); }