diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-09-07 20:04:58 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-09-07 20:04:58 +0100 |
| commit | e5e37a6f2cfa04e146d534028fbf291aac2a9fe2 (patch) | |
| tree | 82f731589d4534b51b2dd1caf4b51848c0468eb1 /lib/docx/body-reader.js | |
| parent | 97144ee9f557ef4886456972d36583b6b62685d2 (diff) | |
Add support for external images
Diffstat (limited to 'lib/docx/body-reader.js')
| -rw-r--r-- | lib/docx/body-reader.js | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/docx/body-reader.js b/lib/docx/body-reader.js index 25a263a..4126fde 100644 --- a/lib/docx/body-reader.js +++ b/lib/docx/body-reader.js @@ -11,6 +11,7 @@ function BodyReader(options) { var relationships = options.relationships; var contentTypes = options.contentTypes; var docxFile = options.docxFile; + var files = options.files; var numbering = options.numbering; var styles = options.styles; @@ -216,9 +217,17 @@ function BodyReader(options) { } function readBlip(element, blip) { - var relationshipId = blip.attributes["r:embed"]; - var imagePath = joinZipPath("word", relationships[relationshipId].target); - var readImage = docxFile.read.bind(docxFile, imagePath); + var embedRelationshipId = blip.attributes["r:embed"]; + var linkRelationshipid = blip.attributes["r:link"]; + var imagePath; + var readImage; + if (embedRelationshipId) { + imagePath = joinZipPath("word", relationships[embedRelationshipId].target); + readImage = docxFile.read.bind(docxFile, imagePath); + } else { + imagePath = relationships[linkRelationshipid].target; + readImage = files.read.bind(files, imagePath); + } var altText = element.first("wp:docPr").attributes.descr; var contentType = contentTypes.findContentType(imagePath); |
