Ejemplo n.º 1
0
 private void TEXT_Load(object sender, EventArgs e)
 {
     textBox1.Text         = pTextElement.Text;
     textBox2.Text         = pTextSymbol.Font.Name + "  " + pTextSymbol.Font.Size.ToString();
     numericUpDown1.Value  = (decimal)(pTextSymbol.Angle);
     checkB.Checked        = pTextSymbol.Font.Bold;
     checkI.Checked        = pTextSymbol.Font.Underline;
     checkU.Checked        = pTextSymbol.Font.Italic;
     pCharacterOrientation = pTextSymbol as ICharacterOrientation;
     checkO.Checked        = pCharacterOrientation.CJKCharactersRotation;
 }
Ejemplo n.º 2
0
        /// <summary>
        /// CJK字符变化时触发事件
        /// </summary>
        /// <param name="sender">CJK字符状态按钮</param>
        /// <param name="e">TextEdit状态变化事件参数</param>
        private void chkTextSymbolsCJK_CheckedChanged(object sender, EventArgs e)
        {
            stdole.Font pFont = new stdole.StdFontClass();
            pFont.Name          = pTextSymbol.Font.Name;
            pFont.Size          = pTextSymbol.Font.Size;
            pFont.Bold          = pTextSymbol.Font.Bold;
            pFont.Italic        = pTextSymbol.Font.Italic;
            pFont.Underline     = pTextSymbol.Font.Underline;
            pFont.Strikethrough = pTextSymbol.Font.Strikethrough;
            pTextSymbol.Font    = pFont as IFontDisp;
            ICharacterOrientation pCharacterOrientation = pTextSymbol as ICharacterOrientation;

            pCharacterOrientation.CJKCharactersRotation = chkTextSymbolsCJK.Checked;
            currentStyleGalleryItem.Item = pTextSymbol;
            PreviewImage();
        }
Ejemplo n.º 3
0
 private void button2_Click(object sender, EventArgs e)
 {
     pCharacterOrientation = pTextSymbol as ICharacterOrientation;
     pCharacterOrientation.CJKCharactersRotation = checkO.Checked;
     stdole.IFontDisp pFont = pTextSymbol.Font;
     pFont.Bold          = checkB.Checked;
     pFont.Underline     = checkI.Checked;
     pFont.Italic        = checkU.Checked;
     pTextSymbol.Font    = pFont;
     pTextElement.Text   = textBox1.Text;
     pTextElement.Symbol = pTextSymbol;
     pGraphicsContainer.UpdateElement(pTextElement as IElement);
     pPageLayout.ActiveView.Refresh();
     //pPageLayout.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null);
     this.Close();
     this.Dispose();
 }
Ejemplo n.º 4
0
        /// <summary>
        /// 选中已有项目时触发事件
        /// </summary>
        /// <param name="sender">符号选择控件</param>
        /// <param name="e">axSymbologyControl选择事件参数</param>
        private void axSymbologyControl_OnItemSelected(object sender, ISymbologyControlEvents_OnItemSelectedEvent e)
        {
            SwitchItemForOutLine   = true;
            OriginStyleGalleryItem = e.styleGalleryItem as IStyleGalleryItem;
            IObjectCopy pObjectCopy = new ObjectCopyClass();

            switch (CurrentSymbologyStyleClass)
            {
            case esriSymbologyStyleClass.esriStyleClassMarkerSymbols:
                currentStyleGalleryItem = pObjectCopy.Copy(OriginStyleGalleryItem) as IStyleGalleryItem;
                pMarkerSymbol           = currentStyleGalleryItem.Item as IMarkerSymbol;
                byte[] myMarkerByte = LongToRGB(pMarkerSymbol.Color.RGB);
                colMarkerSymbolsColor.Color     = System.Drawing.Color.FromArgb(myMarkerByte[0], myMarkerByte[1], myMarkerByte[2]);
                spnMarkerSymbolsSize.EditValue  = pMarkerSymbol.Size;
                spnMarkerSymbolsAngle.EditValue = pMarkerSymbol.Angle;
                break;

            case esriSymbologyStyleClass.esriStyleClassLineSymbols:
                currentStyleGalleryItem = pObjectCopy.Copy(OriginStyleGalleryItem) as IStyleGalleryItem;
                pLineSymbol             = currentStyleGalleryItem.Item as ILineSymbol;
                byte[] myLineByte = LongToRGB(pLineSymbol.Color.RGB);
                colLineSymbolsColor.Color     = System.Drawing.Color.FromArgb(myLineByte[0], myLineByte[1], myLineByte[2]);
                spnLineSymbolsWidth.EditValue = pLineSymbol.Width;
                break;

            case esriSymbologyStyleClass.esriStyleClassFillSymbols:
                currentStyleGalleryItem = pObjectCopy.Copy(OriginStyleGalleryItem) as IStyleGalleryItem;
                IFillSymbol pTempFillSymbol = OriginStyleGalleryItem.Item as IFillSymbol;
                pOriginOutlineSymbol = pTempFillSymbol.Outline;
                pFillSymbol          = currentStyleGalleryItem.Item as IFillSymbol;
                try
                {
                    byte[] myFillByte = LongToRGB(pFillSymbol.Color.RGB);
                    colFillSymbolsFillColor.Color = System.Drawing.Color.FromArgb(myFillByte[0], myFillByte[1], myFillByte[2]);
                }
                catch
                {
                    colFillSymbolsFillColor.Color   = System.Drawing.Color.FromArgb(0);
                    colFillSymbolsFillColor.Enabled = false;
                }
                spnFillSymbolsLineWidth.EditValue = pFillSymbol.Outline.Width;
                try
                {
                    byte[] myOutLineByte = LongToRGB(pFillSymbol.Outline.Color.RGB);
                    colFillSymbolsLineColor.Color = System.Drawing.Color.FromArgb(myOutLineByte[0], myOutLineByte[1], myOutLineByte[2]);
                }
                catch
                {
                    colFillSymbolsLineColor.Color   = System.Drawing.Color.FromArgb(0);
                    colFillSymbolsLineColor.Enabled = false;
                }
                break;

//				case esriSymbologyStyleClass.esriStyleClassLabels:
            case esriSymbologyStyleClass.esriStyleClassTextSymbols:
                ITextSymbol pTempTextSymbol = currentStyleGalleryItem.Item as ITextSymbol;
                string      strText         = pTempTextSymbol.Text;
                currentStyleGalleryItem         = pObjectCopy.Copy(OriginStyleGalleryItem) as IStyleGalleryItem;
                pTextSymbol                     = currentStyleGalleryItem.Item as ITextSymbol;
                pTextSymbol.Text                = strText;
                currentStyleGalleryItem.Item    = pTextSymbol;
                pTextSymbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter;
                pTextSymbol.VerticalAlignment   = esriTextVerticalAlignment.esriTVACenter;
                byte[] byteColor = LongToRGB(pTextSymbol.Color.RGB);
                colTextSymbolsColor.Color           = System.Drawing.Color.FromArgb(byteColor[0], byteColor[1], byteColor[2]);
                comTextSymbolsFont.Text             = pTextSymbol.Font.Name;            //当前选择中的字体名
                comTextSymbolsFontSize.Text         = pTextSymbol.Font.Size.ToString(); //当前选择中字体大小
                btnTextSymbolsBoldFont.Checked      = pTextSymbol.Font.Bold;
                btnTextSymbolsItalicFont.Checked    = pTextSymbol.Font.Italic;
                btnTextSymbolsUnderlineFont.Checked = pTextSymbol.Font.Underline;
                btnTextSymbolsStrikethrough.Checked = pTextSymbol.Font.Strikethrough;
                ICharacterOrientation pCharacterOrientation = pTextSymbol as ICharacterOrientation;
                chkTextSymbolsCJK.Checked = pCharacterOrientation.CJKCharactersRotation;
                break;
            }
            PreviewImage();
            SwitchItemForOutLine = false;
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 窗体载入时触发事件
        /// </summary>
        /// <param name="sender">窗体控件</param>
        /// <param name="e">Form截入事件参数</param>
        private void SymbolSelectorForm_Load(object sender, EventArgs e)
        {
            comboBoxDisplayStyle.EditValue = "平铺";
            switch (CurrentSymbologyStyleClass)
            {
            case esriSymbologyStyleClass.esriStyleClassMarkerSymbols:    //点
                tabOptions.SelectedTabPage = tpeMarkerSymbols;
                pMarkerSymbol = InSymbol as IMarkerSymbol;
                byte[] myMarkerByte;    // = new byte[3];
                myMarkerByte = LongToRGB(pMarkerSymbol.Color.RGB);
                colMarkerSymbolsColor.Color     = System.Drawing.Color.FromArgb(myMarkerByte[0], myMarkerByte[1], myMarkerByte[2]);
                spnMarkerSymbolsSize.EditValue  = pMarkerSymbol.Size;
                spnMarkerSymbolsAngle.EditValue = pMarkerSymbol.Angle;
                break;

            case esriSymbologyStyleClass.esriStyleClassLineSymbols:    //线
                tabOptions.SelectedTabPage = tpeLineSymbols;
                pLineSymbol = InSymbol as ILineSymbol;
                byte[] myLineByte;    // = new byte[3];
                myLineByte = LongToRGB(pLineSymbol.Color.RGB);
                colLineSymbolsColor.Color     = System.Drawing.Color.FromArgb(myLineByte[0], myLineByte[1], myLineByte[2]);
                spnLineSymbolsWidth.EditValue = pLineSymbol.Width;
                break;

            case esriSymbologyStyleClass.esriStyleClassFillSymbols:    //面
                tabOptions.SelectedTabPage = tpeFillSymbols;
                pFillSymbol          = InSymbol as IFillSymbol;
                pOutlineSymbol.Color = pFillSymbol.Outline.Color;
                pOutlineSymbol.Width = pFillSymbol.Outline.Width;
                try
                {
                    byte[] myFillByte;    // = new byte[3];
                    myFillByte = LongToRGB(pFillSymbol.Color.RGB);
                    colFillSymbolsFillColor.Color = System.Drawing.Color.FromArgb(myFillByte[0], myFillByte[1], myFillByte[2]);
                }
                catch
                {
                    colFillSymbolsFillColor.Color   = System.Drawing.Color.FromArgb(0);
                    colFillSymbolsFillColor.Enabled = false;
                }
                spnFillSymbolsLineWidth.EditValue = pFillSymbol.Outline.Width;
                try
                {
                    byte[] myOutLineByte;    // = new byte[3];
                    myOutLineByte = LongToRGB(pFillSymbol.Outline.Color.RGB);
                    colFillSymbolsLineColor.Color = System.Drawing.Color.FromArgb(myOutLineByte[0], myOutLineByte[1], myOutLineByte[2]);
                }
                catch
                {
                    colFillSymbolsLineColor.Color   = System.Drawing.Color.FromArgb(0);
                    colFillSymbolsLineColor.Enabled = false;
                }
                break;

//				case esriSymbologyStyleClass.esriStyleClassLabels://文本
            case esriSymbologyStyleClass.esriStyleClassTextSymbols:                    //文本
                tabOptions.SelectedTabPage = tpeTextSymbols;
                pTextSymbol = InSymbol as ITextSymbol;
                byte[] byteColor = LongToRGB(pTextSymbol.Color.RGB);
                colTextSymbolsColor.Color = System.Drawing.Color.FromArgb(byteColor[0], byteColor[1], byteColor[2]);
                foreach (FontFamily oneFontFamily in FontFamily.Families)
                {
                    comTextSymbolsFont.Properties.Items.Add(oneFontFamily.Name);
                }
                comTextSymbolsFont.Text             = pTextSymbol.Font.Name;            //当前选择中的字体名
                comTextSymbolsFontSize.Text         = pTextSymbol.Font.Size.ToString(); //当前选择中字体大小
                btnTextSymbolsBoldFont.Checked      = pTextSymbol.Font.Bold;
                btnTextSymbolsItalicFont.Checked    = pTextSymbol.Font.Italic;
                btnTextSymbolsUnderlineFont.Checked = pTextSymbol.Font.Underline;
                btnTextSymbolsStrikethrough.Checked = pTextSymbol.Font.Strikethrough;
                ICharacterOrientation pCharacterOrientation = pTextSymbol as ICharacterOrientation;
                chkTextSymbolsCJK.Checked = pCharacterOrientation.CJKCharactersRotation;
                break;
            }
            axSymbologyControl.LoadStyleFile(Application.StartupPath + @"\Styles\ESRI.ServerStyle");
            axSymbologyControl.StyleClass = CurrentSymbologyStyleClass;
            currentStyleGalleryItem.Item  = InSymbol;
            PreviewImage();
        }