どうも、とむむです。
大変有り難いことに、随分と前に書いた以下のエントリーに未だにアクセス頂くことが多い。
tomm.hatenablog.com
最新の情報を確認しつつ、今回はWindows10だけでVisioステンシルを使えるようにする方法を紹介したい。
最新のバージョンで試してみる
LibreOffice Drawで、Visioステンシルを直接読み込むことは可能か?
7.2.0.4(2021年7月23日現在の最新)
残念ながら、答えはNoであった。*1
vss2odgでコンバートするしかない
VisioステンシルをDrawで開く他の方法がないか調べてみたが、vss2odg以外にはなさそうだった。
Windows10上でvss2odgを実行したい
今回はWindows版のLibreOffice Drawをターゲットにしている。
vss2odgを利用するには、Linux環境が必要である。
なので、素のWindows10だけでLinux環境を作ることにした。*2
WSLをインストールしよう
Windows10にはWindows Subsystem for Linux (WSL)という仕組みがある。
簡単に言うと、WindowsのOS機能の一部を間借りして、Linux OSを実行する機能だ。
OSの一部として機能するので、追加のアプリケーションも不要でかつ、最近になってコマンド1つでインストールできるようになった。
管理者権限でコマンドプロンプトを起動し、以下を実行する。
Microsoft Windows [Version 10.0.19043.1165] (c) Microsoft Corporation. All rights reserved. C:\WINDOWS\system32>wsl --install -d ubuntu
これでLinux(Ubuntu 18.04)がインストールされる。
WSLのUbuntuにwriterperfectをインストールしよう
Ubuntuのインストールが完了すると、スタートメニューにUbuntu 18.04 LTSというアプリケーションが追加されているので、起動する。
残念ながら、Ubuntuのwriterperfectに関するパッケージにvss2odgが含まれていないため、ソースからビルドが必要になる。
ここからは以下の手順通りに進めて欲しい。
- writerperfectのビルドに必要なパッケージをインストールする。
$ sudo apt-get install -y unzip wget libboost-dev automake gtk-doc-tools gnome-common libicu-dev libcppunit-dev doxygen libwps-dev libwpg-dev libwpd-dev libvisio-dev librevenge-dev libodfgen-dev libmwaw-dev libmspub-dev libgsf-1-dev libfreehand-dev libetonyek-dev libcdr-dev libabw-dev
- writerperfectをダウンロードする。
$ wget wget https://sourceforge.net/projects/libwpd/files/writerperfect/writerperfect-0.9.5/writerperfect-0.9.5.tar.gz/download -O writerperfect-0.9.5.tar.gz
- writerperfectを解凍する。
$ tar zxvf writerperfect-0.9.5.tar.gz
- writerperfectをビルドする。
$ cd writerperfect-0.9.5 $ ./autogen.sh libtoolize: putting auxiliary files in '.'. libtoolize: copying file './ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' configure.ac:28: installing './compile' configure.ac:21: installing './missing' src/conv/abw/Makefile.am: installing './depcomp' $ ./configure checking for a BSD-compatible install... /usr/bin/install -c . (snip) . ============================================================================== Build configuration: debug: no werror: yes Import: libabw: yes libcdr: yes libe-book: no libetonyek: yes libfreehand: yes libmspub: yes libmwaw: yes libpagemaker: no libstaroffice: no libvisio: yes libwpd: yes libwpg: yes libwps: yes Export: libepubgen: no libodfgen: yes librvngabw: no Other dependencies: libeot: no libgsf: no ============================================================================== $ make && sudo make install (snip)
エラーが出ずに完了すれば、OKだ。
試しに、vss2odgコマンドを実行してみるとよい。
$ vss2odg --help `vss2odg' converts MS Visio stencils to ODF. If OUTPUT is omitted, the result is printed as Flat ODF to standard output. Usage: vss2odg [OPTIONS] INPUT [OUTPUT] Options: --help show this help message --version print version and exit --stdout print the result as flat XML to standard output Report bugs to <https://sourceforge.net/p/libwpd/tickets/>.
WSLのUbuntu上で、VisioステンシルをLibreOffice DrawのODFファイルに変換する
ここからがWSLの真骨頂だと思うので、以下の手順で試してもらいたい。
$ df -hT /mnt/c Filesystem Type Size Used Avail Use% Mounted on C:\ 9p 238G 122G 117G 52% /mnt/c
- Cドライブのダウンロードフォルダへ移動する。
$ cd /mnt/c/Users/[ユーザ名]/Downloads
$ wget https://www.cisco.com/c/dam/assets/prod/visio/visio/switches_cisco_nexus_9000.zip
- ステンシルを解凍して、ODFファイルに変換する。
$ $ unzip switches_cisco_nexus_9000.zip Archive: switches_cisco_nexus_9000.zip inflating: switches_cisco_nexus_9000.vss $ vss2odg switches_cisco_nexus_9000.vss switches_cisco_nexus_9000.odg
問題なく完了すれば、OKだ。
変換したODFファイルを確認する
変換したODFファイルはダウンロードフォルダに保存されているので、LibreOffice Drawから開いてみる。
こんな感じでODFファイル上のステンシルが開けば、完了だ。
*1:試したことがある人は知っていると思うが、真っ白なファイルは開くのみだ。8年経っても変わらないということは、対応する気は0ということなのだろう・・・。
*2:VirtualboxとかVMwareをインストールすれば、同じことができるが・・・vss2odgのためだけにやるには、少々手間である。。。