質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.53%
Word

Microsoft WordはMicrosoftが開発した業務用の文書生成用のソフトウェアです。

Q&A

1回答

295閲覧

wordファイルを閲覧した際に表示される画像のいくつかが、wordファイルの拡張子をzipに変更したファイル中のmediaフォルダ内にない。

satou

総合スコア19

Word

Microsoft WordはMicrosoftが開発した業務用の文書生成用のソフトウェアです。

0グッド

0クリップ

投稿2023/10/05 17:30

編集2023/10/24 20:29

実現したいこと

wordファイルから画像ファイルを取り出すこと。

前提

文書中にいくつかの画像を挿入したワードファイル(a.docx)があります。
このwordファイル(a.docx)をワードアプリで開き、「名前を付けて保存」で、拡張子を「Webページ(フィルタ後)(*.htm,*html)」に変更して、保存をすると、htmlファイル(a.html)と、フォルダ(a.files)ができ、そのフォルダ(a.files)内に画像ファイルができます。

フォルダ(a.files)内に画像ファイルの数は、wordファイル(a.docx)の文書中に挿入した画像の数と一致します。

wordファイル(a.docx)の実態はzipファイルですので、このwordファイル(a.docx)の拡張子をzip(a.zip)に変更し、解凍すると、
「a\word\media」のフォルダ内に画像ファイルが現れます。ちなみに、他のフォルダには、画像ファイルは存在しません。
(参考)https://nj-clucker.com/extract-word-image-data/

スケールや画質の違いこそあれ、本来なら、フォルダ(a.files)内の画像ファイルと、「a\word\media」のフォルダ内の画像ファイルとは、一対一の関係を有するはずです。

問題点

しかし、フォルダ(a.files)にあって、「a\word\media」フォルダにない画像ファイルがあります。
具体的には、フォルダ(a.files)内にあるjpegファイルが「a\word\media」フォルダ内にない。

試したこと、調べたこと

下記にありますように、a\word_rels\document.xml.rels に、「media/image19.png」のように記載されていて、これらのファイル名と「a\word\media」フォルダ内の画像ファイル名は、一対一で対応しています。つまり、a\word_rels\document.xml.rels の画像ファイル名の記載も足りていないことになります。

また、「a\word\document.xml 」で、jpeg画像が挿入されているところのXMLの抜粋を下記に引用します。このXMLには、画像ファイル名が書かれていません。

a\word_rels\document.xml.rels の中身抜粋

XML

1<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 2<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"> 3<Relationship Id="rId26" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image19.png"/> 4<Relationship Id="rId21" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image14.png"/> 5<Relationship Id="rId42" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image35.png"/> 6・・・・・・ 7<Relationship Id="rId111" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image104.png"/> 8</Relationships>

a\word\document.xml の抜粋

XML

1<w:p w14:paraId="0F59E692" w14:textId="77777777" w:rsidR="00962DBA" w:rsidRPr="005A229F" w:rsidRDefault="00150F39" w:rsidP="00962DBA"> 2<w:pPr> 3<w:jc w:val="left"/> 4<w:rPr> 5<w:szCs w:val="21"/> 6<w:lang w:val="pt-BR"/> 7</w:rPr> 8</w:pPr> 9<w:r w:rsidRPr="005A229F"> 10<w:rPr> 11<w:noProof/> 12<w:szCs w:val="21"/> 13</w:rPr> 14<w:pict w14:anchorId="65D2DA55"> 15<v:shape id="図 1" o:spid="_x0000_i1099" type="#_x0000_t75" style="width:447pt;height:534pt;visibility:visible"> 16<v:imagedata r:id="rId50" o:title=""/> 17</v:shape> 18</w:pict> 19</w:r> 20</w:p> 21<w:p w14:paraId="06EF2FB5" w14:textId="77777777" w:rsidR="003A787F" w:rsidRPr="005A229F" w:rsidRDefault="003A787F" w:rsidP="003A787F"> 22<w:pPr> 23<w:kinsoku w:val="0"/> 24<w:wordWrap w:val="0"/> 25<w:overflowPunct w:val="0"/> 26<w:autoSpaceDE w:val="0"/> 27<w:autoSpaceDN w:val="0"/> 28<w:jc w:val="left"/> 29<w:rPr> 30<w:szCs w:val="21"/> 31</w:rPr> 32</w:pPr> 33<w:r w:rsidRPr="005A229F"> 34<w:rPr> 35<w:rFonts w:hint="eastAsia"/> 36<w:szCs w:val="21"/> 37</w:rPr>

疑問点

wordファイルをhtml保存すると、正しく画像ファイルができるが、拡張子をzipにして解凍すると、jepgファイルが無いのは何故か?

wordファイルをhtml保存する際に生成されるJEPGファイルはどこにあるのか?

補足情報(FW/ツールのバージョンなど)

windows11 Pro 22H2
microsoft 365 word for microsft 365 MSO (バージョン2309 ビルド16.0.16827.20130)64ビット

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

satou

2023/10/24 11:23

本件は、プログラムを作成するにあたりファイル構造を知ることになりますので、「プログラミングに関係のない質問」には該当しないかと思います。
guest

回答1

0

スケールや画質の違いこそあれ、本来なら、フォルダ(a.files)内の画像ファイルと、「a\word\media」のフォルダ内の画像ファイルとは、一対一の関係を有するはずです。

Word 文書上のそれぞれの画像に対して何らかの設定が施されている場合は
その限りではありません。

しかし、フォルダ(a.files)にあって、「a\word\media」フォルダにない画像ファイルがあります。
具体的には、フォルダ(a.files)内にあるjpegファイルが「a\word\media」フォルダ内にない。

例えば、新規作成した Word 文書上に任意の画像を挿入し、
その画像のサイズを元の画像とは異なるサイズに変更してみて下さい。

その Word 文書を HTML 形式で保存した場合、files フォルダには
「元の画像ファイル」に加えて「画像のサイズのみが変更された画像ファイル」が
生成されているはず。

そして 作成された HTML ファイルのソース( img タグの記述内容)を
ご覧いただければ分かるかと思いますが、その HTML ファイルを
ブラウザで開いた場合、実際に表示されるのは前者ではなく
後者の画像ファイルの方です。

仮に、新規作成した Word 文書上に地球の画像、月の画像、太陽の画像を挿入した例で説明しますと、
『フォルダ(a.files)にあって、「a\word\media」フォルダにない画像ファイル』というのは、
フォルダ(a.files)には、地球の画像ファイル、月の画像ファイル、太陽の画像ファイルがありますが、
他方、「a\word\media」フォルダには、地球の画像ファイル、月の画像ファイルはありますが、
太陽の画像ファイル(「元の画像ファイル」もなければ、「画像のサイズのみが変更された画像ファイル」もない)がない、
ということです。

そのケースにおいて考えられる可能性の1つは、

  • 『地球』と『月』は、それぞれファイルから挿入された画像であり、原寸通りのサイズを保っている

  • 『太陽』は、ファイルから挿入された画像ではない図形である。

ということです。

例えば『太陽』がオートシェイプなのであれば、画像ファイルとして word\media フォルダに
格納されることはありません。

そしてオートシェイプを含む Word 文書を HTML 形式で保存した場合、
それぞれのオートシェイプは png 形式の画像ファイルに変換されて
files フォルダに出力され、HTMLソース内の img タグにそのパスが
記述されることになります。

いずれにせよ、「word\media フォルダに保存されている画像」と
「HTML 形式への変換に伴い files フォルダに出力された画像」が
一対一の関係を有するとは限らない、という事実に変わりはありません。

投稿2023/10/06 02:36

編集2023/10/06 04:50
sk.exe

総合スコア693

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

satou

2023/10/06 03:26 編集

回答ありがとうございます。補足します。 仮に、新規作成した Word 文書上に地球の画像、月の画像、太陽の画像を挿入した例で説明しますと、 『フォルダ(a.files)にあって、「a\word\media」フォルダにない画像ファイル』というのは、 フォルダ(a.files)には、地球の画像ファイル、月の画像ファイル、太陽の画像ファイルがありますが、 他方、「a\word\media」フォルダには、地球の画像ファイル、月の画像ファイルはありますが、太陽の画像ファイル(「元の画像ファイル」もなければ、「画像のサイズのみが変更された画像ファイル」もない)がない、ということです。
satou

2023/10/06 07:55

回答ありがとうございます。 『太陽』は、ファイルから挿入された画像ではなく、ペイントアプリからクリップボードを経由してワードに張り付けられた画像でした。 そうすると、「ファイル挿入」ではないから、mediaフォルダには画像ファイルがない、ということですね。 そうしますと、太陽の画像情報はどこにあるのか、という疑問が生じます。 拡張子をzipに変えて解凍して得られたすべてのファイルを見ましたが、画像サイズから見て明らかにファイルサイズが小さい。さらに、それらのファイルをすべてメモ帳で開いたのですが、それらしき文字情報はありませんでした。 よろしくお願いいたします。
sk.exe

2023/10/10 09:17

> 『太陽』は、ファイルから挿入された画像ではなく、ペイントアプリからクリップボードを経由してワードに張り付けられた画像でした。 その「ペイントアプリ」が Windows 標準の「ペイント」を指すのか、それとも別のアプリを指すのかが不明ですが、仮に後者であるならば、そのアプリ側でコピーされたデータが Word 文書上に貼り付けられた際にどのような内部形式で保存されているかは、実際の Word 文書を見ない限りは判りかねます。 > 「ファイル挿入」ではないから、mediaフォルダには画像ファイルがない、ということですね。 mediaフォルダに格納されるタイプの(あるいはそういったフォーマットに変換可能な)データであれば保存されるでしょうし、そうでなければ保存されない(別の形で記録、保存されている)ということでしょう。 本質的には個別の事例であると評価できますので、現時点では既に回答させていただいた内容以上のことはお答えできません。
satou

2023/10/24 11:29

回答ありがとうございます。再度調べましたが、 「その「ペイントアプリ」が Windows 標準の「ペイント」を指す」ものでした。 ですので、「mediaフォルダに格納されるタイプの(あるいはそういったフォーマットに変換可能な)データ」に該当すると思いますが、mediaフォルダに格納されていない、ということになります。 そうしますと、どこにあるのか、に戻ってしまいます。 個別の事例とのことですので、いわゆる「有償案件」として、プログラマー様に発注を検討します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.53%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問