/// <summary> /// Print Schema Reference Guide v1.0 Appendix E.3.11 - Page Output Quality /// </summary> public void WritePageResolutionFeature(IList <DC_RESOLUTION> resolutions) { if (resolutions.Count > 0) { WriteStartFeature( PrintSchemaNamespaces.StandardKeywordSet, "PageResolution", PrintSchemaNamespaces.StandardKeywordSet, "PickOne", COMPSTUISR.IDS_CPSUI_RESOLUTION); { for (int i = 0; i < resolutions.Count; i++) { string optionLocalName; uint optionDisplayNameId; bool result = PrintSchemaShim.TryGetOutputQualityOption( (short)resolutions[i].x, out optionLocalName, out optionDisplayNameId ); if (result) { WriteOption(PrintSchemaNamespaces.StandardKeywordSet, optionLocalName, optionDisplayNameId, "None"); } else { if (resolutions[i].x > 0 && resolutions[i].y > 0) { string x = XmlConvert.ToString(resolutions[i].x); string y = XmlConvert.ToString(resolutions[i].y); WriteStartOption(this._privateNamespace, null, x + " x " + y, "None"); { WriteStartScoredProperty(PrintSchemaNamespaces.StandardKeywordSet, "ResolutionX"); { WriteValue("xsd:integer", x); } WriteEndScoredProperty(); WriteStartScoredProperty(PrintSchemaNamespaces.StandardKeywordSet, "ResolutionY"); { WriteValue("xsd:integer", y); } WriteEndScoredProperty(); } WriteEndOption(); } } } } WriteEndFeature(); } }