internal override sealed bool AddOptionCallback(PrintCapabilityOption baseOption)
        {
            bool added = false;

            DeviceFontSubstitutionOption option = baseOption as DeviceFontSubstitutionOption;

            // validate the option is complete before adding it to the collection
            if (option._optionName != null)
            {
                int enumValue = PrintSchemaMapper.SchemaNameToEnumValueWithArray(
                    PrintSchemaTags.Keywords.PageDeviceFontSubstitutionKeys.SubstitutionNames,
                    PrintSchemaTags.Keywords.PageDeviceFontSubstitutionKeys.SubstitutionEnums,
                    option._optionName);

                if (enumValue > 0)
                {
                    option._value = (DeviceFontSubstitution)enumValue;
                    this.DeviceFontSubstitutionOptions.Add(option);
                    added = true;
                }
            }

            return(added);
        }
        internal override sealed PrintCapabilityOption NewOptionCallback(PrintCapabilityFeature baseFeature)
        {
            DeviceFontSubstitutionOption option = new DeviceFontSubstitutionOption(baseFeature);

            return(option);
        }