2018/09/05(水) [n年前の日記]
#2 [cg_tools] wmf と emf を LibreOffice Draw から出力して確認
Drawgraphic 3 Pro で出力した wmf や emf はなんだかアレ、ということが分かったけれど。LibreOffice Drawあたりで wmf や emf を出力した場合はどうなるのか気になってきたわけで。ちょっと実験して確認してみようかなと。
◎ wmfの場合。 :
まず、前提として…。Drawgraphic 3 で出力した wmf は以下のようになっている。
LibreOffice Draw で同じことをするとどうなるだろう。こうなった。
見るからに、こちらも、曲線を細かい線で分割して近似している模様。
ただ、分割された細かい線の形状が違う。
曲線を多数の直線で近似すると言っても、異なる分割の仕方があるのだなと…。
- 元の図形が曲線を含んでいると、細かい直線で分割されてしまう。
- 更に、各直線は、ただの直線のように見えても、実際には3〜4つの要素で作られてる。
LibreOffice Draw で同じことをするとどうなるだろう。こうなった。
見るからに、こちらも、曲線を細かい線で分割して近似している模様。
ただ、分割された細かい線の形状が違う。
- 細かい線は、Drawgraphic 3 のように単なる直線ではなく、曲線に見える形で作られている。
- ただし、それら曲線も、結局は直線で近似してある。
- Drawgraphic 3 のように、謎のストロークや、線の端を示す面などは作られていない。
- 線は無くて、全てが面で構成されている。
- 一つ一つの面が持ってる頂点数は多いけれど、その代わり、面の数は少な目なデータになっている。
曲線を多数の直線で近似すると言っても、異なる分割の仕方があるのだなと…。
◎ emfの場合。 :
emfを出力した場合は、少し違いが出てくる。
Drawgraphic 3 は、wmf で出力しても、emf で出力しても、結果はほとんど違ってこない。おそらく、wmf 用のデータを内部で作ってから、それをそのまま emf に変換して出力しているのではないかと。
LibreOffice Draw の場合は、結果が違ってくる。
曲線を、多数の線に分割するあたりは、wmf と同じだけれど…。
曲線はベジェ曲線として持っているようで。制御点の数が最低限の個数で済む。
また、細かく分割されたそれぞれの線も、一つ一つがベジェ曲線で表現されている。
Drawgraphic 3 は、wmf で出力しても、emf で出力しても、結果はほとんど違ってこない。おそらく、wmf 用のデータを内部で作ってから、それをそのまま emf に変換して出力しているのではないかと。
LibreOffice Draw の場合は、結果が違ってくる。
曲線を、多数の線に分割するあたりは、wmf と同じだけれど…。
曲線はベジェ曲線として持っているようで。制御点の数が最低限の個数で済む。
また、細かく分割されたそれぞれの線も、一つ一つがベジェ曲線で表現されている。
◎ wmfとemfの違い。 :
調べてみたところ、wmf は、そもそも曲線を持てないフォーマットだそうで。
_WMF(Windows Metafile) - 限られた空間の中何を残せるだろう...
_ASCII.jp:仕事に使えるグラフィックス入門
だから、Drawgraphic、LibreOffice Draw、どちらで wmf を出力しても、曲線を直線で近似しているのだろう。良かれと思ってやっているわけではなく、単に wmf の制限で、そうする以外になかったのだな…。
しかし emf は、wmf と違って、曲線を持てるフォーマット。
Drawgraphic の場合は、せっかくの emf の強みをガン無視して、wmf とほぼ同じデータを出力してしまうけど。LibreOffice Draw は、「せっかく曲線を持てるフォーマットなのだから、曲線データを入れるべき」的に、ベジェ曲線を活用して少ない制御点でデータを出力する、といったことをやっているみたいだなと。
そこだけ見ると、有償ソフトの Drawgraphic は、無料で使える LibreOffice Draw より劣ってませんか、という話になるけれど。しかし、LibreOffice Draw は、何か図形を描くたびに選択ツールにリセットされちゃうし、曲線を操るのもなかなか面倒臭くて。操作性の面では Drawgraphic のほうが、はるかに使い易いのだよな…。と、一応フォロー。
_WMF(Windows Metafile) - 限られた空間の中何を残せるだろう...
機能的には若干貧弱らしい
ベジェ曲線や非直交楕円などのどちらかというと基本的なグラフィック素子がいくつか欠けている
_ASCII.jp:仕事に使えるグラフィックス入門
WMF(左)とEMF(右)の違いは、曲線のオブジェクトを保存したときに現われる。EMFのほうがアンカーポイントが少なく、きれいな曲線で保存できるのだ。図形を拡大すると、この違いが顕著になる。
だから、Drawgraphic、LibreOffice Draw、どちらで wmf を出力しても、曲線を直線で近似しているのだろう。良かれと思ってやっているわけではなく、単に wmf の制限で、そうする以外になかったのだな…。
しかし emf は、wmf と違って、曲線を持てるフォーマット。
Drawgraphic の場合は、せっかくの emf の強みをガン無視して、wmf とほぼ同じデータを出力してしまうけど。LibreOffice Draw は、「せっかく曲線を持てるフォーマットなのだから、曲線データを入れるべき」的に、ベジェ曲線を活用して少ない制御点でデータを出力する、といったことをやっているみたいだなと。
そこだけ見ると、有償ソフトの Drawgraphic は、無料で使える LibreOffice Draw より劣ってませんか、という話になるけれど。しかし、LibreOffice Draw は、何か図形を描くたびに選択ツールにリセットされちゃうし、曲線を操るのもなかなか面倒臭くて。操作性の面では Drawgraphic のほうが、はるかに使い易いのだよな…。と、一応フォロー。
◎ svgの場合。 :
[ ツッコむ ]
以上です。