private static XmlNode GetThemesXmlTopNode(ExcelPackage package) { ZipPackageRelationship zipPackageRelationship = package.Workbook.Part.GetRelationshipsByType(ExcelPackage.schemaRelationships + "/theme").FirstOrDefault(); if (zipPackageRelationship == null) { return(null); } var partUri = new Uri($"/xl/{zipPackageRelationship.TargetUri}", UriKind.Relative); return(!package.Package.PartExists(partUri) ? null : package.GetXmlFromUri(partUri).DocumentElement); }
internal ExcelThemeBase(ExcelPackage package, XmlNamespaceManager nsm, ZipPackageRelationship rel, string path) : base(nsm, null) { ThemeUri = UriHelper.ResolvePartUri(rel.SourceUri, rel.TargetUri); Part = package.ZipPackage.GetPart(ThemeUri); RelationshipId = rel.Id; ThemeXml = new XmlDocument(); LoadXmlSafe(ThemeXml, Part.GetStream()); TopNode = ThemeXml.DocumentElement; _colorSchemePath = string.Format(_colorSchemePath, path); _fontSchemePath = string.Format(_fontSchemePath, path); _fmtSchemePath = string.Format(_fmtSchemePath, path); _pck = package; _hashes = new Dictionary <string, HashInfo>(); if (!NameSpaceManager.HasNamespace("a")) { NameSpaceManager.AddNamespace("a", ExcelPackage.schemaDrawings); } }
public PivotTableCacheInternal(ExcelWorkbook wb, Uri uri, int cacheId) : base(wb.NameSpaceManager) { _wb = wb; CacheDefinitionUri = uri; Part = wb._package.ZipPackage.GetPart(uri); CacheDefinitionXml = new XmlDocument(); LoadXmlSafe(CacheDefinitionXml, Part.GetStream()); TopNode = CacheDefinitionXml.DocumentElement; CacheId = cacheId; ZipPackageRelationship rel = Part.GetRelationshipsByType(ExcelPackage.schemaRelationships + "/pivotCacheRecords").FirstOrDefault(); if (rel != null) { CacheRecordUri = UriHelper.ResolvePartUri(rel.SourceUri, rel.TargetUri); } _wb.SetNewPivotCacheId(cacheId); }
internal ExcelTheme(ExcelWorkbook workbook, ZipPackageRelationship rel) : base(workbook._package, workbook.NameSpaceManager, rel, "a:themeElements/") { _workbook = workbook; }
internal ExcelThemeOverride(ExcelChart chart, ZipPackageRelationship rel) : base(chart._drawings._package, chart.NameSpaceManager, rel, "") { _chart = chart; }