SVG最適化 -一太郎版 [マクロ]
花子が書き出すSVGファイルを Adobe Illustrator に読み込ませるために最適化させるマクロ。一太郎2010で動作を確認。
一太郎用なので注意。やることは花子版と同様だが、文字コードを変える操作が不用になり、複数ファイルをまとめて処理できるという大きなメリットがある。一方、処理そのものはバカみたいに遅い。半分ネタ。
SVG最適化 -一太郎版 ver.1.1 (16KB 一太郎圧縮ファイル-登録方法)
(登録方法は花子圧縮ファイルの場合と同様)
まずは花子の図面をSVG形式で保存します。「名前を付けて保存」でも「他形式の保存」でも「一部保存」でもSVGでの保存が可能です。必要に応じて適宜保存します。
その際、「文字コード」はひとまず「UTF-8」のままで、「画像の保存場所」は念のため「別ファイル」で保存します。
マクロを実行すると、下のようなダイアログが表示されます。
最適化するSVGファイルを選択すると(複数ファイルをまとめて指定することが可能です)、即座に最適化がはじまります。
主立った注意点は花子版とおおむね同様です。
一太郎での処理のため、マクロ実行後には、最適化後のSVGファイルの他、最適化前のデータもバックアップファイル(BAKファイル)として残ります。余計と見るか便利と見るかは判断しかねるところですが、最適化前のデータを復旧したい場合、同名のバックアップファイルの拡張子.BAKを.SVGに書き換えればOKです。なお、ちゃんと復旧できるかどうかは保証しかねるので注意して下さい。
花子版のSVG最適化では、手作業で文字コードを変えなければならないという大きなデメリットがあった。冗談半分にWSHを使ってノートパッドを操作し文字コードを変えるバージョンも作ったが、動いたり動かなかったりで、結局めんどうだった。コード変換を実装すればよいだけの話でもあるのだけれど、私がめんどうなので全く手を付けず…。
ふと、一太郎なら文字コードに関係なく処理できるんじゃないか?と思いつき、一太郎版に書き換えてみたわけである。処理は遅いが結局こっちのほうが(私が)楽。
便利な一方できれば使いたくない PushKeys() だが、今回は上書き保存のダイアログに対して自動的にOKを押すために使っている。
が、普通ならたぶん
となるのだと思うのだけれど、どういうわけかこれではうまく動かない。さらにどういうわけか、
だと、ほぼうまく動く。
理由は分からないがともかく動いているので「まあいいや」と思ってやっているのだが、このへんに関して何かトラブルが生じるようであれば、ここを修正すればよいかもしれない。
一太郎用なので注意。やることは花子版と同様だが、文字コードを変える操作が不用になり、複数ファイルをまとめて処理できるという大きなメリットがある。一方、処理そのものはバカみたいに遅い。半分ネタ。
ダウンロード
SVG最適化 -一太郎版 ver.1.1 (16KB 一太郎圧縮ファイル-登録方法)
(登録方法は花子圧縮ファイルの場合と同様)
使用法
SVGで保存
まずは花子の図面をSVG形式で保存します。「名前を付けて保存」でも「他形式の保存」でも「一部保存」でもSVGでの保存が可能です。必要に応じて適宜保存します。
その際、「文字コード」はひとまず「UTF-8」のままで、「画像の保存場所」は念のため「別ファイル」で保存します。
マクロを実行
マクロを実行すると、下のようなダイアログが表示されます。
最適化するSVGファイルを選択すると(複数ファイルをまとめて指定することが可能です)、即座に最適化がはじまります。
※注:場合によって、最適化後に上書き保存の許可を求めるダイアログが表示されることがあります。通常、ここでは「OK」して上書き保存してください。
詳細
主立った注意点は花子版とおおむね同様です。
一太郎での処理のため、マクロ実行後には、最適化後のSVGファイルの他、最適化前のデータもバックアップファイル(BAKファイル)として残ります。余計と見るか便利と見るかは判断しかねるところですが、最適化前のデータを復旧したい場合、同名のバックアップファイルの拡張子.BAKを.SVGに書き換えればOKです。なお、ちゃんと復旧できるかどうかは保証しかねるので注意して下さい。
余談
花子版のSVG最適化では、手作業で文字コードを変えなければならないという大きなデメリットがあった。冗談半分にWSHを使ってノートパッドを操作し文字コードを変えるバージョンも作ったが、動いたり動かなかったりで、結局めんどうだった。コード変換を実装すればよいだけの話でもあるのだけれど、私がめんどうなので全く手を付けず…。
ふと、一太郎なら文字コードに関係なく処理できるんじゃないか?と思いつき、一太郎版に書き換えてみたわけである。処理は遅いが結局こっちのほうが(私が)楽。
制作者メモ
便利な一方できれば使いたくない PushKeys() だが、今回は上書き保存のダイアログに対して自動的にOKを押すために使っている。
が、普通ならたぶん
UpdateDocument?() PushKeys("{ENTER}")
となるのだと思うのだけれど、どういうわけかこれではうまく動かない。さらにどういうわけか、
PushKeys("{ENTER}") UpdateDocument?()
だと、ほぼうまく動く。
理由は分からないがともかく動いているので「まあいいや」と思ってやっているのだが、このへんに関して何かトラブルが生じるようであれば、ここを修正すればよいかもしれない。
2010-04-10 00:00
nice!(0)
コメント(0)
トラックバック(1)
コメント 0