LoginSignup
8
8

More than 3 years have passed since last update.

OpenSCADで日本語を使う

Last updated at Posted at 2019-09-28

動機

Googleで軽く検索してみたのですが、どこにもそれっぽいものが載っていませんでした。
そしてそもそも英語圏の人々はマルチバイト文字を使う動機が無いので、ここにまとめておきます。

日本語出力の仕方

以下のように、text を呼ぶときにフォントを指定します。
また、textを呼び出すだけだと3Dにはならないため linear_extrude を使って高さ(Z軸方向)を指定します。

japanese.scad
txt = "日本語";

linear_extrude(height = 5) {
  text(txt, font = "Hiragino Mincho ProN");
}

スクリーンショット 2019-09-28 13.56.50.png

フォントを設定する

フォントの一覧を表示

メニューのHelp -> Font Listで、一覧を表示するウィンドウが見れます。
スクリーンショット 2019-09-28 13.42.55.png

ヒラギノ系のフォントしか見当たりませんが、これを使うことで日本語を出力できます。
スクリーンショット 2019-09-28 13.45.18.png

全種類を表示

幅の指定もできますが、とりあえずそこは省いて出してみました。
スクリーンショット 2019-08-30 17.26.49.png

main.scad
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に一覧がありました
いくつかの漢字が旧字風デザインになります。

以下のように微妙に違いがあります。
スクリーンショット 2019-08-30 17.49.00.png

↑の画像を出力したサンプルコードです。

font_with_N.scad
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

8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8