| foreach (var rel in document.mainPart.GetRelationships()) | foreach (var rel in document.mainPart.GetRelationships()) | ||||
| { | { | ||||
| string url = "/word/" + rel.TargetUri.OriginalString.Replace("/word/", "").Replace("file://", ""); | |||||
| switch (rel.RelationshipType) | switch (rel.RelationshipType) | ||||
| { | { | ||||
| case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes": | case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes": | ||||
| document.endnotesPart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.endnotesPart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.endnotesPart.GetStream())) | using (TextReader tr = new StreamReader(document.endnotesPart.GetStream())) | ||||
| document.endnotes = XDocument.Load(tr); | document.endnotes = XDocument.Load(tr); | ||||
| break; | break; | ||||
| case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes": | case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes": | ||||
| document.footnotesPart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.footnotesPart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.footnotesPart.GetStream())) | using (TextReader tr = new StreamReader(document.footnotesPart.GetStream())) | ||||
| document.footnotes = XDocument.Load(tr); | document.footnotes = XDocument.Load(tr); | ||||
| break; | break; | ||||
| case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles": | case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles": | ||||
| document.stylesPart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.stylesPart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.stylesPart.GetStream())) | using (TextReader tr = new StreamReader(document.stylesPart.GetStream())) | ||||
| document.styles = XDocument.Load(tr); | document.styles = XDocument.Load(tr); | ||||
| break; | break; | ||||
| case "http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects": | case "http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects": | ||||
| document.stylesWithEffectsPart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.stylesWithEffectsPart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.stylesWithEffectsPart.GetStream())) | using (TextReader tr = new StreamReader(document.stylesWithEffectsPart.GetStream())) | ||||
| document.stylesWithEffects = XDocument.Load(tr); | document.stylesWithEffects = XDocument.Load(tr); | ||||
| break; | break; | ||||
| case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable": | case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable": | ||||
| document.fontTablePart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.fontTablePart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.fontTablePart.GetStream())) | using (TextReader tr = new StreamReader(document.fontTablePart.GetStream())) | ||||
| document.fontTable = XDocument.Load(tr); | document.fontTable = XDocument.Load(tr); | ||||
| break; | break; | ||||
| case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering": | case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering": | ||||
| document.numberingPart = package.GetPart(new Uri("/word/" + rel.TargetUri.OriginalString.Replace("/word/", ""), UriKind.Relative)); | |||||
| document.numberingPart = package.GetPart(new Uri(url, UriKind.Relative)); | |||||
| using (TextReader tr = new StreamReader(document.numberingPart.GetStream())) | using (TextReader tr = new StreamReader(document.numberingPart.GetStream())) | ||||
| document.numbering = XDocument.Load(tr); | document.numbering = XDocument.Load(tr); | ||||
| break; | break; |