動機
Googleで軽く検索してみたのですが、どこにもそれっぽいものが載っていませんでした。
そしてそもそも英語圏の人々はマルチバイト文字を使う動機が無いので、ここにまとめておきます。
日本語出力の仕方
以下のように、text
を呼ぶときにフォントを指定します。
また、textを呼び出すだけだと3Dにはならないため linear_extrude
を使って高さ(Z軸方向)を指定します。
txt = "日本語";
linear_extrude(height = 5) {
text(txt, font = "Hiragino Mincho ProN");
}
フォントを設定する
フォントの一覧を表示
メニューのHelp -> Font List
で、一覧を表示するウィンドウが見れます。
ヒラギノ系のフォントしか見当たりませんが、これを使うことで日本語を出力できます。
全種類を表示
幅の指定もできますが、とりあえずそこは省いて出してみました。
txt = "永";
japanese_fonts = [
"Hiragino Kaku Gothic Pro",
"Hiragino Kaku Gothic ProN",
"Hiragino Kaku Gothic Std",
"Hiragino Kaku Gothic StdN",
"Hiragino Maru Gothic Pro",
"Hiragino Maru Gothic ProN",
"Hiragino Mincho Pro",
"Hiragino Mincho ProN",
"Hiragino Sans",
"Hiragino Sans GB",
];
fonts_size = len(japanese_fonts);
for(index = [1 : len(japanese_fonts)]) {
font_name = japanese_fonts[index - 1];
translate([0, 0, index * 20])
text(txt, font = font_name);
translate([20, 0, index * 20])
text(font_name, font = font_name);
}
$vpr = [-30, 30, 0];
$vpt = [100, 0, fonts_size * 10];
$vpd = 600;
Fontについての細かい話
Pro と Std の違い
Proのほうが、使える文字の種類が多いらしいです(しかし、決してプロ用というわけでもないとのこと)
とりあえず、両方あるならProを指定しておけば大丈夫そうです。
末尾にNが付くもの(ProN, StdN)と付かないもの違い(Pro, Std)
NがつけばJIS2004字形らしいです。
wikipediaに一覧がありました
いくつかの漢字が旧字風デザインになります。
↑の画像を出力したサンプルコードです。
txts = "葛芦辻鯖飴樽";
pro_font = "Hiragino Kaku Gothic Pro";
pro_n_font = "Hiragino Kaku Gothic ProN";
text(txts, font = pro_font);
translate([0, 0, 10])
text(pro_font, font = pro_font, size = 3);
translate([0, 0, 40])
text(txts, font = pro_n_font);
translate([0, 0, 50])
text(pro_n_font, font = pro_n_font, size = 3);
$vpr = [-30, 30, 0];
$vpt = [40, 0, 20];
$vpd = 180;
サンプルコード
Githubにありますので、まるっと持っていきたい方はどうぞ。
https://github.com/iwtn/openscad_japanese_text
参考リンク
https://en.wikibooks.org/wiki/
https://fontnavi.jp/zakkuri/205-N_fonts.aspx
https://fontnavi.jp/zakkuri/204-pro_fonts.aspx