示例#1
0
        public override void WriteXml(XmlWriter writer)
        {
            if (Queryable)
            {
                writer.WriteAttributeString("queryable", "1");
            }
            if (Cascaded > 0)
            {
                writer.WriteAttributeString("cascaded", Cascaded.ToString(NumberFormatInfo.InvariantInfo));
            }
            if (Opaque)
            {
                writer.WriteAttributeString("opaque", "1");
            }
            if (NoSubsets)
            {
                writer.WriteAttributeString("noSubsets", "1");
            }
            if (FixedWidth > 0)
            {
                writer.WriteAttributeString("fixedWidth", FixedWidth.ToString(NumberFormatInfo.InvariantInfo));
            }
            if (FixedHeight > 0)
            {
                writer.WriteAttributeString("fixedHeight", FixedHeight.ToString(NumberFormatInfo.InvariantInfo));
            }

            if (!string.IsNullOrEmpty(Name))
            {
                writer.WriteElementString("Name", Namespace, Name);
            }
            writer.WriteElementString("Title", Namespace, Title);
            if (!string.IsNullOrEmpty(Abstract))
            {
                writer.WriteElementString("Abstract", Namespace, Abstract);
            }
            WriteXmlItem("KeywordList", Namespace, writer, _keywordListField);
            WriteXmlList("CRS", Namespace, writer, _crsField);
            WriteXmlList("SRS", Namespace, writer, _srsField);
            WriteXmlItem("EX_GeographicBoundingBox", Namespace, writer, ExGeographicBoundingBox);
            WriteXmlList("BoundingBox", Namespace, writer, BoundingBox);
            WriteXmlList("Dimension", Namespace, writer, Dimension);
            WriteXmlItem("Attribution", Namespace, writer, Attribution);
            WriteXmlList("AuthorityURL", Namespace, writer, AuthorityURL);
            WriteXmlList("Identifier", Namespace, writer, Identifier);
            WriteXmlList("MetadataURL", Namespace, writer, MetadataURL);
            WriteXmlList("DataURL", Namespace, writer, DataURL);
            WriteXmlList("FeatureListURL", Namespace, writer, DataURL);
            WriteXmlList("Style", Namespace, writer, Style);
            if (MinScaleDenominator.HasValue)
            {
                writer.WriteElementString("MinScaleDenominator", Namespace, MinScaleDenominator.Value.ToString(NumberFormatInfo.InvariantInfo));
            }
            if (MaxScaleDenominator.HasValue)
            {
                writer.WriteElementString("MaxScaleDenominator", Namespace, MaxScaleDenominator.Value.ToString(NumberFormatInfo.InvariantInfo));
            }
            WriteXmlList("Layer", Namespace, writer, ChildLayers);
        }
示例#2
0
        public override void WriteGroupCodes()
        {
            int flags;

            WriteGroupCodeValue(2, StyleName.Trim());

            WriteGroupCodeValue(40, FixedHeight.ToString().Trim());
            WriteGroupCodeValue(41, WidthFactor.ToString().Trim());
            WriteGroupCodeValue(50, ObliqueAngle.ToString().Trim());
            WriteGroupCodeValue(42, LastHeightUsed.ToString().Trim());

            WriteGroupCodeValue(3, PrimaryFontFileName.Trim());
            WriteGroupCodeValue(4, BigFontFileName.Trim());

            flags = GetStandardFlags();

            if (IsVerticallyOriented)
            {
                flags += 4;
            }

            WriteGroupCodeValue(70, flags.ToString().Trim());

            flags = 0;

            if (Backwards)
            {
                flags += 2;
            }
            if (UpsideDown)
            {
                flags += 4;
            }

            WriteGroupCodeValue(71, flags.ToString().Trim());
        }