CSS font-feature-settingsの表現比較 前編

CSSのfont-feature-settingsやfont-variant系プロパティは使用するOpenTypeフォントの持つ機能を引き出して表現を豊かにすることができますが、その機能は利用するフォントに依存します。これらのプロパティを利用するにはブラウザが対応していることと利用するフォントに指定するプロパティの機能があることの2つが必須です。
フォントの持つ機能はフォント毎に全くバラバラです。なので、ウェブ作成者はフォントの機能を利用しようということであれば、その機能を持つフォントが使われるようにしなければなりません。つまり、font-familyでsans-serifやserifだけを指定するのはもちろん、或るOSだけが持つフォントを指定するという様なのはダメです。ウェブフォントが確実に読み込まれるようにしましょう。

今回はfont-feature-settingsをメインにし、同等の機能を持つfont-variant系プロパティがあればそれも書きました。機能例を表示するためのフォントが見つからないということに苦労させられて、全ては解決できませんでした。
font-feature-settingsやfont-variant系共にブラウザが対応していない機能があるということ、フォントに詳しくないと意味がわからないこと多々で、全てを気軽に利用できる状態では無いなという印象。アルファベット圏でない日本人にはあまり使いでのないのも多いし。

font-feature-settingsプロパティの使い方

初期値(既定値)は normal。nornal以外の値は必ず4文字でそれを引用符でくくる。その後にキーワードとして数字を取る。引用符は ' でも " でも可。
0が無効。0の代わりにoffと書くこともできる。
1が有効で1代わりにのonと書くこともできる。そして、1,on は省略できる。
2〜 は必要に応じて。
複数指定することが可能で、その場合は , で区切って並べる。

つまり、
font-feature-settings: normal;  ← 既定値に戻す(全て)
font-feature-settings: 'hoge' 0;  ←hogeを無効にする
font-feature-settings: 'hoge' 1;  ←hogeを有効にする
font-feature-settings: 'hoge' on;  ←hogeを有効にする
font-feature-settings: 'hoge';  ←省略でもhogeを有効にする(1と同じ)
font-feature-settings: 'hoge' 2;  ←hogeを有効且つhogeで使用する値(2以上)



font-feature-settings: normal;

normal (既定値・初期値 = 非適用)
参考: Hello World. The quick brown fox jumps over the lazy dog.




Small caps(スモールキャップス)は小文字xの高さ(x-height)で大文字を表現するもの。つまり小さな大文字。

font-feature-settings: 'smcp';

英小文字をSmall caps(スモールキャップス)化
同等: font-variant-caps: small-caps;

非適用: Hello World. The quick brown fox jumps over the lazy dog.
適用時: Hello World. The quick brown fox jumps over the lazy dog.


font-feature-settings: 'smcp', 'c2sc';

英小文字+英大文字をSmall caps(スモールキャップス)化
同等: font-variant-caps: all-small-caps;

非適用: Hello World. The quick brown fox jumps over the lazy dog.
適用時: Hello World. The quick brown fox jumps over the lazy dog.


font-feature-settings: 'unic';

英大文字をSmall caps(スモールキャップス)化
同等: font-variant-caps: unicase;

非適用: Hello World. The quick brown fox jumps over the lazy dog.
適用時: Hello World. The quick brown fox jumps over the lazy dog.


Petite caps(プチキャップス)はSmall caps(スモールキャップス)より僅かに小さい(ということになっている)。

font-feature-settings: 'pcap';

英小文字をPetite caps(プチキャップス)化
同等: font-variant-caps: petite-caps;

非適用: Hello World. The quick brown fox jumps over the lazy dog.
適用時: Hello World. The quick brown fox jumps over the lazy dog.


font-feature-settings: 'pcap', 'c2pc';

英小文字+英大文字をPetite caps(プチキャップス)化
同等: font-variant-caps: all-petite-caps;

非適用: Hello World. The quick brown fox jumps over the lazy dog.
適用時: Hello World. The quick brown fox jumps over the lazy dog.


font-feature-settings: 'titl';

タイトル用大文字(少し細めの大文字)化
同等: font-variant-caps: titling-caps;

非適用: Hello World.
適用時: Hello World.


適用時・非適用時の見た目が全く同じであるなら、閲覧しているブラウザはそのプロパティに対応していないかもしれません。(適用値=標準値を除く)




font-feature-settings: 'subs';

下付き添え字
同等: font-variant-position: sub;

非適用: Hello World.log39=2
適用時: Hello World.log39=2

ello, orld, 3が下付き添え字になっています。

font-feature-settings: 'sups';

上付き添え字
同等: font-variant-position: super;

非適用: Hello World.E=mc2
適用時: Hello World.E=mc2

ello, orld, 2が上付き添え字になっています。

適用時・非適用時の見た目が全く同じであるなら、閲覧しているブラウザはそのプロパティに対応していないかもしれません。(適用値=標準値を除く)



font-feature-settings: 'lnum';

高さの揃った数字(現在の普通)
同等: font-variant-numeric: lining-nums;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'onum';

高さの揃わないオールドスタイルの数字
同等: font-variant-numeric: oldstyle-nums;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'pnum';

幅の揃わないプロポーショナルの数字
同等: font-variant-numeric: proportional-nums;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'tnum';

等幅(表形式)の数字
同等: font-variant-numeric: tabular-nums;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'frac';

斜め置きの分数
同等: font-variant-numeric: diagonal-fractions;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'afrc';

水平の分数
同等: font-variant-numeric: stacked-fractions;

非適用: 0123456789, 1/2, 1/23
適用時: 0123456789, 1/2, 1/23


font-feature-settings: 'ordn';

順序を表す
同等: font-variant-numeric: ordinal;

非適用: 1st, 2nd, 3rd, 4th, 5th
適用時: 1st, 2nd, 3rd, 4th, 5th


font-feature-settings: 'zero';

斜線付きのゼロ (ゼロの中に点)
同等: font-variant-numeric: slashed-zero;

非適用: 0, 0000, 0.1230
適用時: 0, 0000, 0.1230
フォントによっては0, 0000, 0.1230のようにゼロ中に点のものもある。


適用時・非適用時の見た目が全く同じであるなら、閲覧しているブラウザはそのプロパティに対応していないかもしれません。(適用値=標準値を除く)

後編に続く。

LinuxでCDをコピー

たとえば、自分たちのバンドの楽曲を自家CD化して、それを配布するということはあると思うけど、CDのコピーって意外と面倒に思うよね。

LinuxでCDをコピーするのは簡単・・・・だったんだけど、最近のLinuxではGUIなそれ系のアプリは「ドライブが利用できない」というエラーetc..で動かないということも多々。
原因を調べて対応するというのはもちろん正攻法だしアリだけど、面倒なのでコマンド打ちでコピーする。
コマンド打ち面倒じゃんと思う人もいるかもだけど、GUIの操作よりむしろ簡単だったりする。

CDドライブのデバイス名を調べる

まずはCD/DVDドライブのデバイス名を調べる。それくらいはしておかないとコマンドが打てない。これは1回行って覚えておけば後は不要。

# lshw -C disk
  *-disk                    
       詳細: ATA Disk
       製品: Hitachi HDS72105
       ベンダー: Hitachi
       物理ID: 0.0.0
       バス情報: scsi@0:0.0.0
       論理名: /dev/sda
       バージョン: A3EA
       シリアル: JPB540HA0PXH7B
       サイズ: 465GiB (500GB)
       性能: partitioned partitioned:dos
       設定: ansiversion=5 logicalsectorsize=512 sectorsize=512 signature=68ac40a0
  *-cdrom
       詳細: DVD-RAM writer
       製品: DVD RW AD-7280S
       ベンダー: Optiarc
       物理ID: 0.0.0
       バス情報: scsi@1:0.0.0
       論理名: /dev/cdrom
       論理名: /dev/cdrw
       論理名: /dev/dvd
       論理名: /dev/dvdrw
       論理名: /dev/sr0
       バージョン: 1.01
       性能: removable audio cd-r cd-rw dvd dvd-r dvd-ram
       設定: ansiversion=5 status=ready
     *-medium
          物理ID: 0
          論理名: /dev/cdrom

「がとらぼ」の中の人が使っているPCでは上のように表示された。ピンク色の部分がデバイス名。一番下の/dev/sr0というのが実体だけど、CD-R/CD-RW/DVD-R/DVD-RW用にもそれぞれ割り当てられている。

コピーする

使用するコマンドはcdrdao。超軽量Linuxでなければ最初からシステムに存在すると思う。それにコピーモードであることとデバイス名を指定するだけ。
コピー元のCDをドライブにセットして下の緑のコマンドを打つ。

# cdrdao copy --device /dev/cdrom
Cdrdao version 1.2.3 - (C) Andreas Mueller <andreas@daneb.de>
/dev/cdrom: Optiarc DVD RW AD-7280S     Rev: 1.01
Using driver: Generic SCSI-3/MMC - Version 2.0 (options 0x0000)

Starting CD copy at speed 48...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      AUDIO   0      00:00:00(     0)     03:32:48( 15948)
 2      AUDIO   0      03:32:48( 15948)     03:23:57( 15282)
 3      AUDIO   0      06:56:30( 31230)     03:47:60( 17085)
 4      AUDIO   0      10:44:15( 48315)     03:17:05( 14780)
Leadout AUDIO   0      14:01:20( 63095)

PQ sub-channel reading (audio track) is supported, data format is BCD.
Raw P-W sub-channel reading (audio track) is supported.
Cooked R-W sub-channel reading (audio track) is supported.
Copying audio tracks 1-4: start 00:00:00, length 14:01:20 to "cddata26172.bin"...
Track 1...
Found ISRC code.
Track 2...
Found pre-gap: 00:00:08
Found ISRC code.
Track 3...
Found pre-gap: 00:00:18
Found ISRC code.
Track 4...
Found pre-gap: 00:00:17
Found ISRC code.
Found 13 Q sub-channels with CRC errors.
Found disk catalogue number.
Please insert a recordable medium and hit enter.

Turning BURN-Proof on
Enabling JustLink.
Executing power calibration...
Power calibration successful.
Writing track 01 (mode AUDIO/AUDIO )...
Writing track 02 (mode AUDIO/AUDIO )...
Writing track 03 (mode AUDIO/AUDIO )...
Writing track 04 (mode AUDIO/AUDIO )....
Wrote 774 of 774 MB (Buffers 100% 100%).
Wrote 345303 blocks. Buffer fill min 93%/max 100%.
Flushing cache...
Writing finished successfully.
CD copying finished successfully.
# 

CDの読み込みが終わると上のピンク色部分(実際は色違わず)の表示が出るので空のCD-Rディスクになどに入れ替えて[Enter]を押す。ディスクを入れ替えてディスクトレイを閉めて10秒ほど待ってから[Enter]の方が良いかも。

こんだけ。簡単だよね。

Up