「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:2489
現在:5


ゴシック体にしたい

ページOpenOffice.org FAQの登録ページ
投稿者ニコン
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2007-03-25 07:16:56 (日)
OSWindows XP
依存するページ
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

フォントの指定でゴシック体にしたかったので、日本語部分に sans-serif と指定したところ、実際の表示は "MS 明朝" になってしまいました。英数字部分は書体は不明ですが Arial に似たフォントになっていたので、sans-serif の指定が正しく反映されているようです。

serif を指定した場合には、日本語部分は "MS 明朝"、英数字部分は "Times New Roman" らしきフォントになっていました。

monospace を指定した場合には、日本語部分は "MS 明朝"、英数字部分は "Courier New" らしきフォントになっていました。

つまり、英数字部分には一応、一般フォントファミリー(generic font family)が反映されたフォントが選ばれているようですが、日本語部分に関してはすべて "MS 明朝" になってしまうようです。

追記: 日本語部分にフォントを指定する場合、一般フォントファミリーでなくても、欧文フォントやシステムに存在しない適当なフォント名を指定した場合にも "MS 明朝" となってしまうようです。私は Windows XP を使っていますが、IPAフォントをインストールしているので、Writerの規定のフォントには IPA明朝 を指定しています。それにもかかわらず、この設定を無視して "MS 明朝" が選ばれてしまうようです。欧文フォントに対するOS自体のFont Link機能も有効になりません。

自分の環境などでは具体的なフォント名を指定することで解決できる問題なのですが、インターネット上で広く公開する文書を作成する場合には、閲覧者の環境も様々なので、できる限り一般フォントファミリーもフォント指定の候補に加えておきたいのですが、現状ではほとんど意味がないですね。

これは、OpenOffice.org自体の(将来的には改善される)バグと考えるべきか、それとも、ユーザ側で対処しなければならない仕様と考えるべきなのでしょうか?


メイリオ

ニコン (2007-03-25 22:21:15 (日))

私のパソコンにはWindows Vistaのメイリオというフォントはインストールされていないのですが、文字の書式にこのフォントを指定すると、英数部分は文字化け、日本語部分は例によって "MS 明朝" になってしまいました。

ためしに、さざなみゴシック(これもインストールされていない)を指定すると、この場合にはなぜか "MS ゴシック" で表示されました。フォントの置き換え機能を使っているわけではありません。

どうやら、OpenOffice.org自体がある程度一般的なフォントの種類に関するデータを持っているような感じですね。新しく出てきたメイリオの場合はデータがないので「ゴシック体」としては認識されず、とりあえず無難な "MS 明朝" で表示しているという感じでしょうか。

2点おたずねします

seihonda (2007-03-26 00:39:43 (月))

.「日本語部分に sans-serif と指定したところ」 とおっしゃっていますが、この操作は具体的にどのようにされましたか?

.登録済みフォントの統一をとのことですが、具体的にはどのフォントを登録すべきとお考えですか?

Re: 2点おたずねします

ニコン (2007-03-26 01:53:49 (月))

「日本語部分に sans-serif と指定したところ」というのは、まず、文字の書式を変更したい部分を選択した状態で、文字の書式設定ダイアログを開きます。その中の「フォント」タブにある日本語用フォントの「フォントの種類」のボックスに sans-serif という文字を直接キーボードから入力します。そして「OK」ボタンを押してダイアログを閉じました。

sans-serif というのはフォント名ではなく、スタイルシートなどで使われる一般フォントファミリー(generic font family)のひとつです。英数字用のフォントの設定では、この一般フォントファミリーが有効になっています。ただし、英数字の場合にも、どのような基準でフォントが選ばれているのかは不明です。

「登録済みフォントの統一を」というのは、よく意味がわかりません。

自動フォント置き換え機能

catch (2007-03-26 11:33:58 (月))

>OpenOffice.org自体がある程度一般的なフォントの種類に関するデータを
>持っているような感じですね。


そのとおりです。
faq/1/170あたりが参考になると思います。

>できる限り一般フォントファミリーもフォント指定の候補に加えておきたい
>のですが、現状ではほとんど意味がないですね。


そもそも、OOoではフォントファミリーに対応していないと思いますので、そのとおりだと思います。

そもそもOOoではフォントファミリーに対応していない?

ニコン (2007-03-26 12:48:17 (月))

先の投稿にも書いていますが、英数字部分では一般フォントファミリーが有効になっています。「対応していない」というのは日本語部分のみなのですが、英数字部分で対応しているなら将来的には日本語部分でも対応する可能性もあるのでしょうか? 単に、日本語の対応が手落ちなだけだと思いますが。

OpenOffice.orgのXMLについてはほとんど知らないのですが、フォント指定のCSSについてはHTMLと似たようなものであるならば、一般フォントファミリーが使えると考えるのは普通です。

少なくとも、現状では、不明なフォントはすべて "MS 明朝" となってしまうのは不具合といえると思います。指定されたフォントが見つからない場合には、ユーザがオプション画面で任意に指定した「規定のフォント」で表示されるべきでしょう。

ちなみに、用語について厳密に言うと、「一般フォントファミリー」と「フォントファミリー」では意味がまったく異なってしまうので、誤解のないよう正確に書いてもらえればと思います。

Re: そもそもOOoではフォントファミリーに対応していない?

M.Kamataki (2007-03-26 14:44:32 (月))

もっと調べないといけないと思いますが、
>英数字部分では一般フォントファミリーが有効になっています
わたしのところでは確認できません。
>sans-serif という文字を直接キーボードから入力します
sans-serifのときもserifのときも英数字部分は「Times New Roman」から下図のように変化しません。

faq4_379_01.png
現在の仕様では、日本語用フォント、英数字用フォントで連動した形での指定はできません。ただし、連動させようという議論はありますし、その場合は、ニコンさんがおっしゃる一般フォントファミリーによる指定も考えよう、という話も出ています。

余談:
VCL.xcuを調べてみると「Gothic」「Fujiyama」(まだ変なのがいろいろ見つかります)というフォントファミリー的な指定は可能なようですが、これも日本語用、英数字用に別々の指定となります。

再現手順が違う?

M.Kamataki (2007-03-26 15:16:59 (月))

単純にツールバーのところにある「フォント名」欄を使うと、日本語用、英数字用で、たとえば「Gothic」を指定するとそれなりのフォントが選ばれます。書式→文字ではなく、こちらで指定されたのでは。

こちらだと、英数字用フォントも指定したものに変わりますね。さて、やはりもっと調べないと。

たぶん

M.Kamataki (2007-03-26 15:27:33 (月))

VCL.xcuを調べてみると
SERIF、SANSなどの定義が見つかりました。「sans-serif」は「sans」としてもOKなはずです。

ただし、いずれの定義も日本語用フォントの指定は見つかりません。(韓国語は定義してあるかも)

とんでもない勘違いをされているようです

ニコン (2007-03-26 19:37:29 (月))

私が再現手順を書いたのはあくまで「日本語用フォント」の部分のみで、英数字用フォントの部分で一般フォントファミリーが有効であるかどうかを確認するためには、当然ながら、「英数字用フォント」のフォントの種類の入力ボックスにも sans-serif などの一般フォントファミリー名を入力して確認しています。日本語部分にしか指定していなくて英数字部分が同時に変わるなどという、まったく別の問題について議論しているわけではありません。

一般フォントファミリー(generic font family)について

ニコン (2007-03-26 20:08:51 (月))

CSSで言うところの「一般フォントファミリー」というのはフォントをデザイン系統で分類したもので、以下のキーワードによって定義されています。

serif
ひげつき文字で、縦横線に強弱がある。明朝体系統のフォント。
sans-serif
ひげのない文字で、線に強弱がなく、跳ね払いがない。ゴシック体系統のフォント。
cursive
筆記体。続け書き風と手書き風のフォント。
fantasy
装飾が主となるフォント。絵文字も含む。
monospace
固定幅フォントで、タイプライター体とも呼ばれる。

これらのキーワードはフォント名ではありません。

たとえば、見出し文字などにはゴシック体を指定したいと思ったときでも、Windows XP 環境で日本語部分の文字書式に「メイリオ」を設定したりすると、このフォントは存在しないので、自動的に「MS 明朝」で表示されてしまいます。ゴシック体にしたいところが明朝体になってしまうので、デザイン的には致命的といえます。

このような事態を想定して、通常は相手の環境にインストールされていそうなフォントを複数指定しておくことである程度の対策にはなりますが、それでも、文書をインターネット上で公開するとなれば、相手の環境は様々で予想外の事態というのは必ず起こりえるわけです。そもそも、想定されるフォントをすべて列挙して、そのすべてを設定するというのは非常に面倒な作業です。

そのような場合に、最悪でもある程度似通ったフォントが自動的に選ばれるように指定するのが、この「一般フォントファミリー」です。OpenOffice.orgではセミコロンで区切って、
メイリオ;sans-serif
などとしておけば、メイリオがない場合には、その環境にインストールされているいずれかのゴシック体で表示されるというのが本来のCSSの仕組みです。

実際に、英数字用のフォント、日本語用のフォントの両方に「メイリオ;sans-serif」という書式を設定すると、規定のフォントがどのように設定されていようとも、英数字は Arial 、日本語は MS 明朝 で表示されます。規定のフォントは、文字の書式にフォントが一切指定されていない場合のみに有効になるだけです。

ちなみに、XP環境で英数字用のフォントに「メイリオ」だけ指定すると、まったく読めなくなります。こっちのほうが致命的かも。Vistaも発売されたことですから、これからは「メイリオ」を使う人も増えてくると思います。

貴重なご意見ありがとうございます

M.Kamataki (2007-03-27 11:08:20 (火))

調査中のため中途半端な回答になりすみません。問題の再現はできました。この問題の解決のためには、VCL.xcuファイルというフォント関係のデータベース(的なもの)を改善しないといけません。そのため、ご協力をお願いします。

とりあえず、「sans-serif」の指定で日本語フォントは「MS Pゴシック」などのインストール済みと予想されるゴシック系のフォントを表示できるVCL.xcuファイルを作成してみました。当ページに添付しますので、日本語フォントのゴシック体が表示されるかどうか、ご確認ください。

fileVCL.xcu

このファイルは、クイック起動も含めたOpenOffice.orgが起動していない状態で、<install_path>\share\registry\data\org\openoffice\VCL.xcu と置き換えてください。元のファイルはファイル名を変えるなど、保存しておき、確認が終わったら元に戻してください。

長くなるので、タイトルを改めます。

Issue登録について

M.Kamataki (2007-03-27 11:18:48 (火))

さて、上記の修正は「sans-serif」だけですので、完全ではありませんし、修正方法も正しい方法ではないと思います。また、同ファイルが一部の人だけで使われるだけであれば無意味です。しっかしと直したものを公式リリースに含めてもらわないといけません。そのためには、OpenOffice.orgのバグ情報データベースIssueTrackerに登録しないといけません。

まず、VCL.xcuに詳しい方の協力が必要です。これは開発MLで相談します。

さて、VCL.xcuに詳しい方は、フォント問題にも詳しいかというとそうではありません。やはり調べてから修正作業ということになると思います。そこで、ニコンさんのように明確に問題点を指摘できる方は貴重です。できれば開発MLへ一時的にもご参加いただければ助かります。ご検討ください。なお、この機会にメイリオフォントへの対応も行っておきたいですね。VCL.xcuの改善は国際化されているOpenOffice.orgにとっては、各国での動作確認だけでも大変なので。

フォント名の置換の設定

Tora (2007-03-27 13:52:15 (火))

いきなり、解決策へ急ぐ前に。。。

フォント名の置換 においては、以下のような設定内容があらかじめ定義してあります。
 ・マルチプラットホーム対応を実現させるために、あるプラットホームで実在するフォント名に対して、こちらのプラットホームではどの実在する可能性のあるフォント名に置換させるか
 ・今回話題となっている「一般フォントファミリー」をこちらのプラットホーム上のどの実在する可能性のあるフォント名に置換させるか
 ・他

フォルダ名: C:\Program Files\OpenOffice.org 2.1\share\registry\data\org\openoffice
ファイル名: VCL.xcu
※コピーして貼り付けして、VCL.xcu.xml などと拡張子を.xmlに変更するとIEで簡単に閲覧できます。
※Writerなどで、ファイル/開く でそのファイルを選択し、「ファイルの種類」を「符号化テキスト」、「文字列」を「Unicode (UTF-8)」として開くと、編集できます。
内容:

<node oor:name="Settings">
 各種設定

<node oor:name="DefaultFonts">
 Writer, Calc などの各アプリケーションのデフォルトのフォント名
  <node oor:name="ja" oor:op="replace">
   文章の言語が日本語の場合の設定

<node oor:name="FontSubstitutions">
 フォント名の置換
   <node oor:name="serif" oor:op="replace">
     <prop oor:name="SubstFonts">
       <value>thorndaleamt;thorndale;timesnewroman;nimbusromanno9l;times;timesroman;newyork;timmons;serif;lucidaserif;lucidabright;roman;nimbusromanno9;bookman;itcbookman;garamond;garamondmt;palatino</value>

   <node oor:name="sansserif" oor:op="replace">
     <prop oor:name="SubstFonts">
       <value>albanyamt;albany;arial;nimbussansl;helvetica;lucidasans;lucida;geneva;helmet;sansserif;nimbussans;andalesansui;arialunicodems;lucidaunicode</value>

   <node oor:name="cursive" oor:op="replace">
     <prop oor:name="SubstFonts">
       <value>andymt;comicsansms;andy;kidprint;zapfchancery;itczapfchancery;monotypecorsiva;corsiva;chancery;chanceryl;lucidacalligraphy;lucidahandwriting;palacescript;palacescriptmt;arioso;shelley</value>

   <node oor:name="fantasy" oor:op="replace">
     <prop oor:name="SubstFonts">
       <value>imprintmtshadow;imprintshadow;imprint;chevaraoutline;chevara;gallia;colonnamt;algerian;castellar;monotypeoldstyleboldoutline;monotypeoldstyleoutline;chevaraoutline;imprintmtshadow;imprintshadow;imprint;colonnamt;castellar;imprintmtshadow;imprintshadow;imprint;chevara;gallia;algerian</value>

   <node oor:name="monospace" oor:op="replace">
     <prop oor:name="SubstFonts">
       <value>cumberlandamt;cumberland;couriernew;nimbusmonol;courier;lucidatypewriter;lucidasanstypewriter;monaco;monospaced;nimbusmono;nimbusmonol</value>

OOo Windows 版での文字表示のしくみ

Tora (2007-03-27 13:53:53 (火))

OpenOffice.org 2.x Windows 版では、
 ・表示しようとしている文字のUnicodeの文字コードからどのフォント名を使うか判断する。
  ・あきらかに西洋の文字であれば、「英数字用のフォント」
  ・あきらかにアジア圏の文字であれば、「日本語用のフォント」
  ・どちらでもない文字であれば、一つ前の文字に割り当てたフォント

 ・判断した結果のフォントとしてユーザーによって指定されているフォント名について、
  ・OSに対してそのフォント名でその文字のグリフを持っているかどうか尋ね、
   ・OSが持っていると答えた場合、
    ・そのフォント名でその文字を描画するようOSに依頼する。
   ・OSが持っていないと答えた場合、
     ・そのフォント名として与えられた文字列を基に、置き換えるフォント名の発見に取り掛かる。
      ・フォント名の文字列を半角の小文字に変換する。記号やスペース文字を削除する。
      ・ツール/オプション/OpenOffice.org/フォント/置換テーブルを使う の設定内容、および VCL.xcu の FontSubstitutions の設定内容から当てはまる設定を検索する。
       ・検索した結果、見つかれば、その設定項目の内容を採用する。
        その内容が複数ある場合には、左から順にOSに対してそのフォント名を持っているか、持っているとしたらさらにその文字のグリフをもっているか尋ねる。
        ・OSがそのフォント名でその文字のグリフを持っていると答えた時点で、その組み合わせで描画するようにOSに依頼する。
       ・検索した結果、見つからない、もしくは、OSがフォント名とグリフの組み合わせを1つも持っていない場合には、
        ・フォント名 StarSymbol, OpenSymbol という主に記号文字を含めたフォントファイル中にその文字のグリフが含まれているかどうか調べ、
         ・含まれていた場合には、
          ・そのフォント名でその文字を描画するようOSに依頼する。
         ・含まれていない場合には、
          ・規定のフォント名でその文字を描画するようOSに依頼する。

serif, sansserif, cursive, fantasy, monospace に日本語フォント名を含めるべきなのか

Tora (2007-03-27 13:57:38 (火))

もし、serif, sansserif, cursive, fantasy, monospace に日本語用のフォント名を含めるとなると、当然、韓国語、中国語、インドの言葉、東南アジアのフォントなどなどと、それはもうすごい数のフォント名を含めなければいけないことになってしまいます。

それって、本当にそれでよいのでしょうか。

Re: serif, sansserif, cursive, fantasy, monospace に日本語フォント名を含めるべきなのか

Tora (2007-03-27 14:21:33 (火))

今回の件では、勉強になりました。
Google で検索すると、serif, sans-serif, cursive, fantasy, monospace 日本語 フォント名 いろんな情報が見つかりますね。

ところで、HTML で使われているそれらの5つの generic-family を、Microsoft Office や OpenOffice.org のワープロや表計算、プレゼンテーションで使うというのは、なんとなく理解しがたいのですが、なぜ?

このような事態を想定して、通常は相手の環境にインストールされていそうなフォントを
複数指定しておくことである程度の対策にはなりますが、それでも、文書をインターネッ
ト上で公開するとなれば、相手の環境は様々で予想外の事態というのは必ず起こりえ
るわけです。そもそも、想定されるフォントをすべて列挙して、そのすべてを設定すると
いうのは非常に面倒な作業です。


で、現状は、作成者側ではなく、表示側が苦労して表示するようするっていうのが、オフィス文書での文化かと。
Adobe Reader などは、その涙ぐましい努力によって、ほとんどのフォント名を的確に置換して表示してくれるようです。
OpenOffice.org も、表示側にて表示可能なフォント名を探し出すように作ってきています。

そのような場合に、最悪でもある程度似通ったフォントが自動的に選ばれるように指定
するのが、この「一般フォントファミリー」です。OpenOffice.orgではセミコロンで区切って、
メイリオ;sans-serif
などとしておけば、メイリオがない場合には、その環境にインストールされているいずれ
かのゴシック体で表示されるというのが本来のCSSの仕組みです。


というような、HTML や Web の文化をオフィス文書の文化にも取り込みましょうというご要望のように感じられます。
でも、それってそれでいいのかなぁ。というのが私の感想です。もう少し、強い説得力のある理論展開はないでしょうか。
そうでないと、全世界の言語に係わる VCL.xcu の generic-family の定義のところにアジア圏の複数の言語のフォント名をあらかじめ含めておいてくれという論議は、開発側には受け入れられないのではないかと。

フォントの設定

ニコン (2007-03-27 15:40:30 (火))

ウェブブラウザの場合、Mozilla ではフォントの設定画面で、ユーザが自由にそれぞれの一般フォントファミリーに対して任意のフォントを設定できるようになっています。(Firefox ではこの設定は簡易化されていますが、SeaMonkey では今でもすべての一般フォントファミリーを設定できるようになっています。)

SeaMonkey.png


IE の場合には、sans-serif と monospace のみ設定できます。

OpenOffice.org では、Writer のみ規定のフォントをユーザが設定できるようになっています。ここで設定できるのは、スタイルごとにどのフォントを使うかという設定なので、一般フォントファミリーの設定とは違いますが、少なくとも、文書内で指定されたフォントがない場合には、この規定のフォントで表示されるべきだと思います。現状では、指定されたフォントがない場合には、この規定のフォントは無視されて、OpenOffice.org 内部の設定に従うことになっています。

このスタイルの設定とは別に、OpenOffice.org でも Mozilla 同様の一般フォントファミリーの設定画面を用意して、ユーザが自由にフォントを設定できるようにしておけば、開発者側があらかじめこれらの設定のために膨大な数のフォントのリストを用意しておかなくても十分対処できると思います。せいぜい、OS ごとに問題が起こらない程度のデフォルトの設定くらいは必要ですが。(現状でもフォント置き換えの設定に serif などの一般フォントファミリーを登録すれば可能だと思いますが、これでは設定していないユーザにとっては無意味です。)

ところで、Web の文化といいますが、インターネットで公開される文書は、何も HTML 文書でなければならないというわけではありません。ワープロ文書だろうと、紙の文書からスキャナーで取り込んだ画像だろうと、なんでもいいわけで、たまたま HTML 形式の文書が普及しているだけのことです。標準規格として認定された ODF 文書ならば HTML 文書同様にインターネットで公開するにふさわしいものといえます。(つまり、今後は ODF 文書を閲覧するのは OpenOffice.org 以外のソフトである可能性だってあるのです。)いまや、オフィスといえどもインターネットの利用は当然の時代に、Web 用、オフィス用などという区別で文書を分けることはにはほとんど意味はありません。

Web の向こう側にいる人にも伝わる文書であること。そういうことが、これからは重要だと思います。OpenOffice.org はすでに HTML と同系統の XML で記述されているわけですから、CSS の規則が採用されてもなんら不思議ではないし、その是非を問うまでもなく、一般フォントファミリーの概念はすでに OpenOffice.org に採用されています。それがなぜ、欧文だけなら良くて、日本語には必要ないなどと考えられるでしょうか?

開発者側に受け入れられないと考えるのは、開発者側でフォントに関してすべて設定しておかなければならず、負担が大きいと考えてしまうからでしょう。そうではなく、発想を転換して、ユーザ側でも設定できるようにしておけば、開発者側の負担も軽減し、開発も容易になると考えてみてはいかがでしょうか。これなら、OOo開発者、文書製作者、閲覧者のいずれにとってもメリットは大きいと思います。

Re: フォントの設定

Tora (2007-03-27 16:10:15 (火))

ごもっともな説得です。ちょっと考えます。

ずいぶんと前から、OOoにおいても「仮想フォント」というような概念はどうでぃ。ということがjaのコミュニティ内で言われていました。「明朝」や「ゴシック」という抽象的なフォント名を使えばいいじゃないか。「MS明朝」や「IPAゴシック」などのようないわば製品名ではなく。つまり、serif や sans-serif と同じような発想であるわけですけど。


「開発側の負担」のご指摘。まさにその通りなのです。OOoの現在のままの作りでは、問題がでることがわかっているので。

serif -> MS P明朝;明朝

とやると、日本語ではよいのですが、韓国語では問題となるので。

serif -> 明朝;MS P明朝

とやると、韓国語ではよくなるのですが、日本語では問題となるので。
現在の作りでは、複数のプラットホーム、複数の言語、を全部まとめて1行で記述するしかないので、その中で記述するフォント名の順序にとてもシビアになってしまうのです。言語毎には分割できるようにも工夫はなされているのですけど。英語版であっても日本語版であっても韓国語版であっても、そのユーザーインターフェースには関係なく、文書の作成時の言語に応じてその機能が動作するべきてあるし。ところが、OOoの言語版が異なるということは多くの場合ユーザーが使っているOSの言語版が異なるわけでして。

UNIX 系において、Gothic と Mincho は韓国語のフォント名でして、それに目がくらんで日本語版でそれを使ってしまうと、日本市場においては許容できない形の文字が表示されてしまうのです。

などなど。

裏側の技術的な仕掛けは、generic-family でよいとして、オフィス文書においても、「明朝」、「ゴシック」、「行書」、「ファンタジー」、「等幅」、というような抽象的なフォント名を使うようにコンピュータの文化を変えていくようにするとか。

いや、それとも、やはり、作成時には実在する物理的なフォント名で作成し、表示側が努力してそれと同じフォントもしくは似通ったフォントで表示する、という現在の流れをより突き進めるか。

上記の2つをうまく使い分けるか融合させるか。

ふ〜む。

Re: フォントの設定

M.Kamataki (2007-03-27 16:17:31 (火))

>欧文だけなら良くて、日本語には必要ない
これに対して、VCL.xcu を眺めて思ったことがあります。SubstFonts(フォント名の置換)の設定には、serif、sansserif などにまじって小文字の gothic、mincho なども見えます。

そこで、sansserif の設定に gothic を加えればよいかと考えて作業したのですが、うまくいきませんでした。フォント名の置換の中に、別枠で定義されたフォント名の置換も入れられると思ったのですが。これはわたしの手に負えないので、Tora さんよろしくお願いします。そういう意味では Tora さんのご登場は心強いです。

で、拙作の添付した VCl.xcu は、日本語フォントをそのまま入れてあるので、たぶん正しい方法ではないのです。

加えて sansserif の定義はあるのですが、sans-serif の定義がないのも謎です(拙作 VCl.xcu では仕方がないので定義済み)。-> Tora さん。

Writer/Web

ニコン (2007-03-27 18:07:31 (火))

そもそも、OpenOffice.org で作成する文書というのは ODF に限らず、HTML 文書の作成もできます。HTML 文書であれば、当然 CSS の設定が有効になるわけで、一般フォントファミリーが指定されていれば、それに従って表示されるはずです。ところが、OpenOffice.org の HTML 編集モード(Writer/Web)で HTML 文書を編集するときにも、結局は ODF 形式の文書を作成するときと同様、日本語部分の表示には一般フォントファミリーが有効になりません。(日本語のフォントに「メイリオ;sans-serif」と指定しても MS明朝 で表示されます。もちろん、IE などのウェブブラウザで閲覧する場合にはゴシック体で表示されます。)

というわけで、いずれにしても、フォントの表示に関して不具合があるということになりそうです。

一応、サンプルとして、OpenOffice.org の HTML エディタで作成した HTML 文書 #ref(WriterWeb.html) を添付しておきます。エクスポートの形式は「OpenOffice.org Writer」です。

Re: フォントの設定

Tora (2007-03-27 19:41:33 (火))

sans-serif の設定は、sansserif になっています。
文字の比較処理の組み合わせを少しでも少なくするために、わざと、全角文字を半角文字へ、大文字を小文字へ、記号やスペースは削除、という変換をかけてあります。
文字の比較とは、例を示しますと、「MS P明朝」→「msp明朝」、先頭の文字を一文字ずつ削っていくと「p明朝」になるでしょ。するって〜と例えば「ipap明朝」と後半部分で部分的に一致するわけで、みっけた。「MS P明朝」が使っているコンピュータ上にはないけど「IPA P明朝」が代りに見つかったからそれでで表示しよう。という算段なのです。
たまにとち狂って、韓国語フォントの「明朝」を見つけてしまったりすると、日本市場では許容しがたい日本語の文字が表示されてしまったりするんですけど。というわけで、一長一短はありますが、機械的に置換先のフォント名を見つけ出すという仕組みです。

で、Windows版でsans-serifを「MS ゴシック」にしたいのでしたら、sansserif の設定の部分のフォント名リストの先頭部分に「MS ゴシック」(スペースは半角スペースね)とずばりそのものを書いておくんなまし。「msゴシック」でもいけるはずですけど、何も人間様にとってわざわざわかりにくくすることもないですから。
その文字列「MS ゴシック」は、Windowsがアプリケーションに対して渡してくる文字列です。「gothic」とは渡してこないので、gothicでは一致しないのです。

Re: Writer/Web

Tora (2007-03-27 19:55:41 (火))

generic-family をサポートするということは、
 ・作成側
   ・フォント名を選ぶプルダウンメニューなどに、それらの generic-family 名が一覧表示されるぺきである。わざわざ手打ちするもんではない。

 ・表示側
   ・generic-family 名が指定されている文書の表示において、使用しているOS上で利用可能な適切な実在するフォント名へ自動的に置換が行なわれ、表示されるべきである。
    ・その表示を印刷やPDF出力する時には、generic-family 名ではなく、置換後のフォントを使用するべきである。
    ・その文書を形式を変えて保存するときには、置換後のフォント名ではなく、generic-family 名で書き出すべきである。

っていうような、開発要望かしらん。

HTML系のエディタやツールでは、どんなメニューが表示されるか、例はありませんでしょうか。


「メイリオ」がうまく表示されないという不具合については、現状ではあまり重要でないと私は考えています。
 ・Windows Vista のシェアは、現時点では、1%未満でしょう。
  そんなにも使われていない製品が係わる場合にのみ発生するという不具合に対する改修は、現時点ではそれほど重要ではないと思います。
 ・とはいえ、ボーナス商戦や年末商戦には売り込みしてきて、少しずつシェアーが伸びるでしょうから、
  ほっておくわけにもいきませんよね。このスレッドではなく、別のスレッドを立てて、そちらでやりましょう。

Nvuでのフォント指定

ニコン (2007-03-27 21:18:28 (火))

Nvu という HTML エディタで文字のスタイルを設定する画面です。

text.png

この画面では、カタカナで「フォントファミリ」と書かれている部分が CSS の font-family を設定する部分です。ここには「未指定」、「規定値」、「独自のフォントファミリ」というラジオボタンの選択メニューがあります。「未指定」だと何も指定せず、「規定値」を選ぶと、更にプルダウンメニューから 3 つのタイプのフォントファミリーを選べるようになっています。それぞれ、sans-serif 、serif 、monospace の一般フォントファミリーを含んでいます。「メイリオ」などの独自の指定をしたい場合には、「独自のフォントファミリ」に直接書き込みます(プルダウンメニューからインストールされているフォントを選ぶこともできます)。独自の指定をする場合には、やはり CSS のマナーにしたがって、自分で sans-serif なども記入することになります。

この Nvu の「規定値」のような指定方法が採用されていれば、簡単に一般フォントファミリーを用いて文書の見た目を統一することができます。

追記: Nvu のフォント設定の画面は割と理想的ですが、実はバグが多くてあまり実用的ではありません。もし、実際に試してみようと思って Nvu をインストールされた方がおられたら、がっかりするかもしれません。私は Nvu を常用していますが、CSS でフォントを指定する場合にはほとんど HTML のソースを直接編集して書いています。

なお、Nvu には、サイトマネージャーという FTP アクセス機能があり、サーバ上のファイルを直接編集することができます。つまり、ローカル PC にファイルを保存する必要すらないわけです。FTP アクセスについては faq/4/385 でも話題になっていますが、Nvu のような機能が OpenOffice.org でも実装されることが理想ですね。

Re: Nvuでのフォント指定

Tora (2007-04-01 02:15:04 (日))

ニコンさん、スナップショットなどの情報、ありがとうございます。

上記のようなプルダウンメニューを OpenOffice.org のフォント名のプルダウンメニューやマウスの右クリックの「フォント」のサブメニュー、ダイアログの「フォント」タブなどに既存のフォント名に加えて表示する。っていう開発要望と考えてよろしいでしょうか。

そして、もちろん、generic-family を選択して入力でき、そしてその設定に応じて適切な表示もできるようにする。ということで。

serif, sans-serif, cursive, fantasy, monospace は、OpenOffice.orgのHTMLエディタの部分には「有用」だと思いますが、WriterやImpressには「不要」ではないでしょうか。例えば、PowerPointなどで企画書をお客様にプレゼンする人がこの文字はゴシック風だからsans-serifだ。などと考えるなどとは到底考えられないでしょう。Calcで経理業務している人が後輩に対してそのセルのフォントはmonospaceにしてね。なんて教えている姿も想像できないのではないでしょうか。

オフィス文書においては、serif, sans-serif, cursive, fantasy, monospace だけでは、まず、種類が「不足」していると思います。例えば、明朝系のserifとゴシック系のsans-serifの二つに対して、それらは以下の四つが普通に使われています。
・明朝体
・プロポーショナルな明朝体
・ゴシック体
・プロポーショナルなゴシック体
等幅のmonospace を明朝体かゴシック体に割り当てたとしても、やはり1つ対応が足りません。

さらに、
・教科書体
・行書体
・ポップ体
などもあってもよいでしょう。

市場には、「MS明朝」、「IPA明朝」、「HG明朝」、など、明朝体も沢山あります。と思いきや、実はそれらの三つの中身はおんなじみたいなんです。株式会社リコーから同じ字母のフォントをマイクロソフト社が、IPAが、サン・マイクロシステムズ社が購入や使用権を得ているだけに過ぎないようです。

「宅急便」はとある運送会社の登録商標、「宅配便」は一般名称であることは皆様ご存知のとおりですよね。

オフィスソフトにおいても同様に、フォント名に「MS明朝」などのいわば商品名ではなく、「明朝体」みたいな一般的な名称を使うようにできればいいのかな。

というような大きな改革の流れのなかで、今回のserif, sans-serif, cursive, fantasy, monospaceについても片付ければよいのかも。

いかがでしょうか。

一般的な名称

ニコン (2007-04-01 04:31:51 (日))

文字の書式設定で言語を「日本語」と選んだ場合に、英語における "serif" を「明朝体」に翻訳して表示するという意味でなら問題はないと思います。スタイルにおける内部的な一般フォントファミリーのキーワードに「明朝体」という漢字の名称を用意しておくというのは、あまり現実的とは思えません。たとえば、HTML形式でエクスポートした際に、一般フォントファミリーのキーワードに「明朝体」などとしてあっても、まったく意味がないですからね。もっとも、このような標準規格の問題にまで私のような素人が突っ込んで意見するような立場にはないでしょう。

Nvu のダイアログの例は、あくまでそのような設定方法もあるという一例で示しただけです。希望としては、OpenOffice.org のフォントの種類の指定部分で、現在の具体的なフォント名の入力欄に加えて、「ゴシック体(sans-serif)」や「明朝体(serif)」などといった一般フォントファミリーに関する選択肢も追加しておくのがいいかと思います。

現状の機能の拡張という方向で考えて、すでにあるフォントの置換テーブルの機能に、うまいこと一般フォントファミリーのキーワードも含められるようにするというというのもいいかもしれません。

いずれにしても、機能の実装方法はどのようなものでもかまわないのですが、要は、英数字同様に一般フォントファミリーが日本語でも有効になってもらえればいいだけのことです。あるいは、せめて、ユーザが任意に設定した「規定のフォント」が有効になるようにしてもらいたいと思います。実用上は、この「規定のフォント」が有効になっていればまったく問題はありません。Writer文書はImpressなどと違い、文書のやり取りの機会が多いはずなので、自分の環境だけで表示に問題がなければよいというものではありません。だからこそ、Writerのみに「規定のフォント」の設定画面があるのでしょう。

ところで、メイリオについていろいろ調べていたときに、以下のようなページを見つけました。
「トラブル シューティング: メイリオ フォントを使用した場合に行間が大きく空いてしまう」
http://office.microsoft.com/ja-jp/word/HA102058201041.aspx
ここでダウンロードできるWordのテンプレートをOpenOffice.orgで開くと、文字の書式にメイリオが設定してあるのですが、なぜか文字を入力すると、Writer 文書で自分で「メイリオ」と指定したときのように "MS 明朝" で表示されず、"MS ゴシック" でもなく、他のゴシック体(おそらく 「NFモトヤシータ゛」)で表示されました。いったいどういう仕組みになっているんでしょうね?

公開されているマニュアル類

ニコン (2007-04-01 17:03:17 (日))

グッデイさんの「OpenOffice.org推進サイト」で配布されているマニュアル類の中には、ちょっと古いですが、OpenOffice.org 1.1形式(sxw)の文書も公開されています。これを見ると、フォントの指定には、英数字、日本語共に「Fモトヤシータ゛1」が指定されています。このフォントは私のパソコンにはインストールされていないので、日本語部分は「MS 明朝」でどうにか表示されるのですが、英数字部分は文字化けするか、まったく表示されないかのどちらかで、とても読めるような状態ではありません。

「Fモトヤシータ゛1」というフォントは、あまり一般的ではなく、すでに公開されていない(現在のものは「NFモトヤシータ゛1」と名前が変わっているので、同一フォントとはみなされません)ので、せっかくWebで一般公開された文書であっても、ほとんどの人が読めないということになってしまいます。(それ以前に、インストールガイドなどは、OpenOffice.orgインストール前に必要な文書なので、そもそもOpenOffice.orgで読むことなどできませんが……。)

こういう場合には、せめて、「この文書のフォントには『Fモトヤシータ゛1』が指定してあります。このフォントがインストールされていない環境ではフォントの置換テーブルをあらかじめ設定しておいてください」みたいな注意書きくらいは必要ですよね。

ただ、そういう閲覧者側の手を煩わせずとも、このような一般公開される文書は問題なく閲覧できるような環境は必要です。OpenOffice.orgを単なるODFビューアとしてのみインストールしているというような人もいるでしょうから。

もっとも無難なのは、HTML文書同様、フォントを一切指定しないことです。これなら規定のフォントで表示されるので文字化けなどは起こりません。

逆にもっとも問題なのは、フォントを指定したときに、それが閲覧者の環境にインストールされていない場合には、規定のフォントの設定が無視され、文字化けがおきてしまうということです。これは、一般に公開する文書としては致命的な「(OpenOffice.org自体の)不具合」というべきでしょう。この点についての改善は「緊急」を要するといってもいいくらいです。

フォントを指定し、なおかつ現状でこの不具合を回避するためには、文書製作者側であらかじめ、想定される閲覧者の環境で使用されていそうなフォントを複数列挙する形で指定しておく必要があります。「Fモトヤシータ゛1」だけではなく、「Fモトヤシータ゛1;ヒラギノ角ゴ Pro W3;IPAゴシック;MS ゴシック」みたいな感じにしておけば、だいたい問題はないでしょう。特に英数字に関しては日本語フォントよりは欧文フォントを指定しておいたほうが文字化けの可能性も少なくなります。(英数字には一般フォントファミリーを指定することもできます。)

ただ、このように複数フォントを指定する場合でも、文書製作者がある程度フォントに関する知識がないとできないことなので、そのような負担を軽減するためにも、serif や sans-serif などの一般フォントファミリーを採用するということは、非常に有意義なことだと思います。文書製作者は、最低でも「Fモトヤシータ゛1;sans-serif」と指定しておくだけで、理想的なデザインを維持したまま、文字化けなどの問題もほとんど解消してしまうのです。

HTML(CSS)の書式とOpenOffice.orgの書式を同列に扱うのはどうなのかな?

hendarix (2007-04-01 17:55:51 (日))

OpenOffice.orgを始めとするオフィス系ソフトの書式は、印刷(と言うかページ)の概念が深く関わっていると思います。(ですから、MS Officeとの間でレイアウト崩れが問題になる)
対して、HTML(CSS)における書式では、文字修飾、ブロック範囲修飾が主目的で、印刷(ページ)を考慮に入れていないのが現状だと思います。

※CSSでは、@page, @font-faceを考えられているが形骸化している。
※他にも、XHTML-PrintやXSL-FOがあるけど割愛。

オフィス系ソフトでフォントを指定すると言うことは、その指定によって“ページ数”や“段落のページ内での位置”、“表のセル内に収まるか収まらないか”などの確定を見越してのものだと思います。
ページが縦に伸びるとか、ブロック範囲にスクロールバーが表示されるHTMLとは根本的に違うものだと思うのですがどうなんでしょう!?

※OpenOffice.orgのスタイルをCSSに例えているのは、そうすれば分かりやすいと思ってのことと理解している。

確かに、環境の違いによってフォントのあるなしが問題にはなります。ですが、印刷(ページ)と言う概念を取り入れた中での書式(レイアウト)である以上、問題が出るのは仕方がないと思うのですが(文字化けとは別問題)。
フォントを汎用名で指定できる、またそれをユーザーがカスタマイズできるとしても、この問題は避けられないですよね。

いや、しかし、文書に設定されたフォントがなかった場合の代替方法は、何か策が必要でしょうね。

以上、OpenOffice.orgにおけるHTML文書の取り扱いは横に置いておいて発言しました。

Re: HTML(CSS)の書式とOpenOffice.orgの書式を同列に扱うのはどうなのかな?

ニコン (2007-04-01 20:09:05 (日))

今さらそのような是非を問うまでもなく、すでに英数字に関しては HTML の CSS 同様の一般フォントファミリーが採用されています。今後については、日本語のフォント指定でも一般フォントファミリーを有効にするにはどうしたらいいかといったことを考えてゆくのが筋ではないでしょうか。

オフィス系文書に「印刷」の概念が深くかかわってきたという主張はわかりますが、オフィス系文書といえども「印刷」を考慮せずに作られる文書もあるのです。HTML 文書(これも ODF の規格に含まれています)も広い意味ではオフィス系文書のひとつですが、これは印刷よりも画面上で読めることのほうが重視されてきたと思います。また、 faq/4/400 の質問者のように、ワープロ文書の新規作成時から Web レイアウトで編集する人もいます。このような場合、当然ながら、印刷よりも画面上で閲覧することを想定した文書の作成方法になります。Web レイアウト表示で保存された文書は、他の環境の OpenOffice.org で閲覧するときも Web レイアウトで表示されます。プラグインを有効にして Web ブラウザで閲覧する場合には、HTML 文書とほとんど変わらない見た目となります。単にファイル形式が Writer で作成した ODT 文書であるというだけのことです。OpenOffice.org のインストール時のデフォルトでは ActiveX コントロールなども含め「すべて」インストールされ、Mozilla プラグインも有効になった状態なので、意識的に設定を変えた人でない限り、多くの OpenOffice.org ユーザがブラウザ上で ODF 文書を閲覧できるようになっているはずです。

OpenOffice.org を単なる MS Office の代替品であるというような発想しかないと、従来からの「印刷」という概念からなかなか離れられないかと思いますが、今後はインターネットで配信されるメディアのひとつとして、印刷よりも画面上での閲覧を想定した文書というのはますます増えてくると思います。「印刷に適した文書」というのは、あくまでオフィス文書の形式としては、選択肢のひとつに過ぎなくなってくるでしょう。

個人的なことになりますが、私の場合には、1 日中パソコンの前に座っていながらも、プリンターの電源を入れるのは 1 ヶ月に数回あるかどうかという程度です。ワープロ文書や PDF などはほとんど画面上で読むだけで、めったに印刷することはありません。そういう立場の人間からすると、印刷を想定して作られ、ページごとに分けられている文書というのは読みづらいだけでしかありません。

世の中には、インターネット上で配信されている文書を画面上で読めればそれで十分という人もたくさんいます。Web というメディアが紙というメディアより劣っているというような時代ではないと思います。

Re: 公開されているマニュアル類

M.Kamataki (2007-04-01 21:03:44 (日))

>英数字部分は文字化けするか、まったく表示されないかのどちらか
この件、確認したいのですが、具体的にはどのファイルでしょうか。流れ的には InstGuide_115_linux_solaris.sxw みたいなのですが、わたしのところでは確認できません。もし、同ファイルであれば、さらにWindowsのデフォルト環境として保存しているVirtual PC上のXP SP1で確認してみます。

ちょっと水を差しますが、

EL (2007-04-02 05:07:39 (月))

OpenOfficeのWriterを、印刷向けのソフトではなく画面上での閲覧を想定した文書作成ソフトにシフトされると困る代表のひとりが私です。現状ではWriterはあくまで印刷向けの文書作成ソフトであって、HTMLやCSS準拠のために印刷向け機能を犠牲にする方向にはありません。
またPDFも、画面上で読むことが多いのは事実だと思いますが、そもそも印刷物と同様の使い勝手を実現するために使われている規格です。ページ分けやレイアウトについて、作成・配布する側の意図通りに再現されることを目標としています。

Writer文書を、作成者が指定したフォントがない環境で表示をさせる場合において、意図しないジャンルのフォントで表示されたり、果ては文字化けして読めない状態であったりという現象があるのなら、それらは改善されるべきだと私も思います。後者については特に重要な課題でもあると思います。しかし、それらの課題と、HTMLやCSSの仕様に合わせることとは話が別です。
もしもHTML&CSSに高い水準で準拠した文書エディタをOpenOfficeSuiteに望むのであれば、現有のWriterの仕様変更によってではなく、そういったエディタの新規追加という方向でやってほしいと私は考えます。

ちなみに、

EL (2007-04-02 05:32:56 (月))

MS明朝とIPA明朝はリコーの同じ字母を用いて…という話について。。。確かに字母は同じということで構わないと思います。しかし、フォント化の際のデザイン処理がこれだけ違っている(画像 faq4_349_richomincho.png 参照)と、パッと見た印象もだいぶ異なってきます。特に印刷向けの感覚では「違う書体」だと認識せざるをえません。しかも、それらのフォント指定を置換すると文字幅の違いなどによってレイアウトが変わってしまいます。

faq4_349_richomincho.png

各種似たり寄ったりの明朝やゴシックであっても、それらを峻別して使うオフィスソフトユーザはそれなりにいます(あまり大多数でもないでしょうが…)。これは日本語文化圏より欧米の方がより顕著かもしれません。SerifかSanserifかという違いは割と線引きがしやすいですが、さらに詳細にどの書体を指定するかという選択肢はラテン文字フォントの方がずっと幅広いからです。
だから、文書作成時に特定のフォント名を指定するところから出発する仕様は、やはり変えてほしくないと私は思いますね。

明朝体やゴシック体などの汎用書体について、「明朝」や「ゴシック」という一般名で指定をできる機能が実装されたらそれはそれで面白いなぁとは思いますが、結局は、世に流通するそれぞれのカテゴリに属する「商品名」のフォントをソフトウェアはどこかに保持していなければいけないわけで…。開発者側にとっては、Adobe Readerのやっているフォント置換表示にかかる労力とさして変わらなくなる気もします。

そもそも論として、

Tora (2007-04-06 03:03:23 (金))

私なりにHTMLやCSSで使われる Generic font family を書籍なWebなどで少し勉強してみました。
http://www.w3.org/TR/REC-CSS2/fonts.html#generic-font-families

どうも、それらによると、本件の発端となったsans-serifでゴシック体を表示したいというのは、少し方向性がずれているのではないかと感じています。

例えばゴシック体を表示したければ、

BODY { font-family: メイリオ,MSゴシック,IPAゴシック,東風ゴシック,sans-serif }


などのように、正しい実在するフォント名を明示的に列挙し、そして最後にどうしてもなかったらという意味の「フォールバック」用として Generic font family で定義されているフォント名を使いなさい。というお作法ではないでしょうか。

例えば、

BODY { font-family: メイリオ,sans-serif }


BODY { font-family: sans-serif }


などの表記だとゴシック体にならない。という苦情を述べるのは実はお門違いであって、それは記述側の「手抜き」なのではないかと。
とはいっても、Internet Explorer などの Webブラウザの日本語版では、期待通りにゴシック体になるんだろうなとは思いつつ。

Re: そもそも論として、

ニコン (2007-04-06 03:21:14 (金))

font-family: メイリオ,sans-serif
というのはあくまで状況を再現するために分かりやすい1例を示したまでです。なんだか、突っ込みどころがあまりにもばかばかしくてあきれてしまいました。ここの人たちは、本気で問題に対処しようという意識がないみたいですね。

いくらフォントを列挙したところで、それらがすべて将来にわたって使えるという絶対的な保障はありません。メイリオができた今、MS ゴシックでさえどうなるかわからないのです。現に、かつては使えたFモトヤシータ゛1というフォントを指定して作成された文書が、今ではフォント自体が配布されていないので読むことができなくなっています。もちろん、閲覧者側でフォント置換テーブルの設定をすれば読めるようにはなりますが、最初から一般フォントファミリーも同時に指定しておき、なおかつOpenOffice.orgがそれに対応していれば、今でも普通に読めたし、これから先もずっと読めるでしょう。ODFが何のために標準規格として認定されたかといえば、このように、将来にわたって永久に、閲覧環境を問わず読める文書であることを保証するためです。そういう意味では、フォント名ではなくキーワードで指定する一般フォントファミリーの概念が非常に重要なのです。

現状では、font-family: メイリオ,sans-serif などという手抜きの指定方法ではとても満足できる文書など作れず、やむを得ず10個も20個もフォント名を並べて書くことでしか対処できないでしょう。そういった例をいちいちここに書かなければなりませんでしたか? 仮に書いたとしても、その指定方法ですら、いつかは使えなくなる可能性もあるのです。

そもそも、フォント名を複数列挙することができるという文字書式の設定方法を知っているユーザはそれほど多くはないだろうし、仮にその方法を知っていたとしても、フォント指定のプルダウンメニューから選択できるフォントは1つだけで、複数のフォントを一度に指定するための、ユーザビリティに優れたインターフェースにはなっていません。フォント名をキーボード入力しようとして、MS ゴシックを MSゴシックと書いてしまって、フォント名が有効にならなかった(OpenOffice.orgでよくても他の環境ではNG)なんてこともありえます。作業効率の問題もあるので、結局はフォント名1つ指定して終わりという場合がほとんどではないでしょうか。

OpenOffice.orgのオープンとは、ODF (OpenDocument Format) のオープンとは、すべての人に開かれているという意味であって欲しいです。本当に自分のオフィス内だけで使えればそれでいいという考え方が、これからも通用するのでしょうか?

Re: そもそも論として

Tora (2007-04-06 04:02:39 (金))

Internet Explorer などの日本語対応のWebブラウザで sans-serif と書けば、ゴシック体で表示される。という事実がある。

MSゴシックなどの製品名をいちいち記述してるのでは、今後のインターネット上に公開する文書において、あまりよい状況であるとはいえない。

という上記の二つの方向性から、今後のインターネット社会ではフォント名として製品名ではなく sans-serif と記述しようぜ。という発想の方向性には、私も合意します。

で、す、が、、その発想は、準備不足で、しかも、いきなり飛びすぎているように感じます。

Webの文化では、Generic font family で、5つ用意されています。オフィス文書、特にアジア圏の文書、に適用するには、5つでは到底足りないとは思いませんか。

Webの文化では、書き手側が相手のことを考えてフォント名を列挙するという発想でスタートしたようです。一方、オフィス文書の文化では、書き手は実在のフォント名を1つ指定し、必要であればフォントのデータを埋め込む。PDFやEPSなど。OOoでもフォントデータをOOoのファイル中に埋め込もうという議論があります。

このように、全く逆の方向を向いてる両者をどうやって統合しようかと。

最低限、Generic font family の日本語対応を OpenOffice.org でも行なうべきであるというのは、始めの一歩ではあると思いますが、それだけじゃ、ほとんどの人は使わないのではないでしょうか。Webデザイナーの勉強をして知識・経験のあるOOoユーザーしか Generic font family については理解できないでしょう。ほとんどの人が使わないことが明白である機能を提案してみても、限りある人的リソース・時間・タイトなスケジュールという制限の中では、開発要望としては耳は傾けても実際に開発をスタートするというところまでは受け入れられないでしょう。

OOoのフォント名を指定する部分に手書きで sans-serif と書く人は、ごくごく少数ですよね。やはり、最低でも、プルダウンメニューの一項目として sans-serif があるべきですよね。でも、ほとんどのユーザーからしてみると、ただでさえ山のようにあるフォント名の一覧の中に sans-serif ってあるけど、これって何? 知らないわけですから、使いませんよね。

というわけでして、OOo における Generif font family をアジア圏の言語においてもサポートしようというような比較的小さな話をする前に、もっと大きな話から出発し直すのがようのではないかと考えているわけです。

どうでしょうか。

sans-serifとは

ニコン (2007-04-06 04:21:09 (金))

日本語のOpenOffice.orgのフォント指定のダイアログでも英語で sans-serif と表記されなければならないということはないでしょう。これはあくまでキーワードであって、内部的に正しく変換されていれば、ダイアログでの表記上は何でもいいと思います。すでに示したSeaMonkeyの例ではカタカナで「サンセリフ」とかかれています。もちろんこれでも意味はわからないでしょうから、日本語で通用する「ゴシック体」という項目名(Firefoxではすでに「ゴシック体」、「明朝体」という表記になっています)にしておくのが無難でしょう。マウスオーバーで表示される「詳細ヒント」にも説明があれば、たいていのユーザは問題なく使いこなせるようになるはずです。私も、OpenOffice.orgの機能のほとんどはそうやって自分で確かめて覚えてきましたから。ただ、そういった日本語化の作業については、今の段階で私が意見を述べるような立場にはないと思います。

何度も言うようですが、一般フォントファミリーの実装の是非を問うまでもなく、すでに英数字部分のフォント指定にはHTML同様の一般フォントファミリーがOpenOffice.orgでも使えるようになっています。あとは、それが日本語部分でも問題なく動作すればよいだけのことです。

英数字部分に日本語フォントなどを指定したときに文字化けする件、指定されたフォントが閲覧者の環境にひとつもなかった場合に「規定のフォント」が無視されてMS 明朝で表示されてしまう件についても改善されるべき点です。

私はただそういったことを言っているだけで、フォントの指定に手抜きをするなとかそういう方向で話しているわけではありません。

問題を切り分けていきましょうか。

EL (2007-04-06 04:39:14 (金))

ちょっと問題提起の幅が拡がりすぎている感があるので、問題を小分けに切り分けて少しずつ検討していきませんか?

さて、私がニコンさんの問題提起を拝見している中で、まずもっとも緊急を要するのは、Writerで英数字にメイリオを指定したときにメイリオを持たないXP環境で「読めなくなる」という点だと個人的に感じていますが、私のXP環境では問題が再現できませんでした。私の再現手順が悪いかもしれませんので、よろしければ問題の起きたファイルをUploadしていただけませんでしょうか。まぁそのファイルを私の環境で開いても問題が再現しない可能性もありますが…。

ちなみに私がやってみた限りでは、メイリオを持たないWinXPで日本語・英数字ともにフォント名「Meiryo」を指定したところ、どちらもゴシック系の書体で表示されました。フォント名判別のためにPDFにエクスポートしてAcrobat6.0で開いたところ、日本語部分が「ArialUnicodeMS」、欧文が「Swiss721BT-Medium(HelveticaのBitstream社版で、代表的なサンセリフ書体)」に置き換わっていました。また、Acrobatに印刷した場合、日本語・欧文ともに「ArialUnicodeMS」でした。
また、フォント名に「メイリオ」と指定した場合は、表示は日本語・欧文ともに明朝系・セリフ、PDFにエクスポートした場合は「Meiryo」指定の場合と同じで、Acrobatに印刷した場合は日本語・欧文ともに「TypeBankM-hv」が指定(この書体は持っていないので埋め込み無し)されていました。

フォントの問題はほんとに難しい。

EL (2007-04-06 04:49:14 (金))

これは余談ですが、フォントの問題はほんとに難しいです。
ゴシック系・明朝系というレベルで「意図した系統の書体」が選ばれても、レイアウトは必ずと言っていいほど崩れます。それに、フォントは増え続けてもいますし、また消えゆくフォントもあります。だから、ODFの中で指定したフォントが、ファイルを開くすべての人のもとで、作成者の意図したような方向で再現されることを望むには限界があるわけです。それが現在のODFネイティブの限界だと私は思います。
MS-Officeのようにファイルの中にフォント(のサブセット)を埋め込みできるようになれば、少なくとも閲覧するだけならレイアウトもデザインも崩れません。
Adobe Readerのように、フォントを埋め込まないにしても、ソフトとして多数の類似フォント情報を保持し、異なるフォントが表示に使われたときのレイアウト崩れを防ぐために、もとのフォントで表示されていたグリフの位置も併せてファイルに記録していたりすれば、同一性を保ったビューアとしての完成度が高いのは当然でしょう。
しかしOOoは(そして基本的にはMS-Officeも)、あくまで印刷物やPDFなどに落とし込むまでの編集ソフトではないかと思うのです。それにODFにも、レイアウトの同一性を保証するための仕組みは備わっていません。
HTMLとの互換性や、Generic font familyへの対応は、そうした中での「あったらラッキー」的な機能なんですよね。少なくとも現状は。

私も、sans-serifと記述すれば日本語部分には適切なゴシック系のフォントが表示に使われる仕組みがあったら、便利だなぁと思います。ただそれにはAdobe Readerのような努力がOOo開発チームにのしかかります。

あともうひとつ。
OOoの英数字の部分で実現されている「HTML同様の一般フォントファミリー」の考え方が、日本語などの非ラテン文字圏でそのままの形で通用するわけではありません。そもそもHTMLには「sans-serif」などはあっても「ゴシック体」などはなく、日本語書体の一般フォントファミリーについて共通の合意が形成されている状態ではないわけです。やるなら、まずはそういう部分の策定が必要でしょうし、OOoの開発プロジェクトの中心にいる人たち(彼らのほとんどはラテン文字使用者)に理解を得られるよう働きかけていかなければいけません。
ある程度使い物になる「日本語一般フォントファミリー」が実装されることが今後あるかもしれませんが、時間はかかると思います。

Re: sans-serifとは

Tora (2007-04-06 04:57:19 (金))

明朝体とゴシック体だけでなく、それらのプロポーショナルな体、さらに教科書体、行書体、ポップ体なども、必要です。W3C の Generic font family の5つだけでは、足りません。

W3Cでずいぶんと昔に主に欧米文化のために定義された5つを流用するのではなく、新たにオフィス文書の文化で、私たちが定義するべきではないかなぁ。と考えています。既存の5つに新たに追加するという形でもよいですし。

英数字部分に日本語フォントなどを指定したときに文字化けする

については、別途、不具合として別のスレッドを起こしていただけませんでしょうか。

指定されたフォントが閲覧者の環境にひとつもなかった場合に「規定のフォント」が無視されてMS 明朝で表示されてしまう

は、Microsoft Windows が行なっているのだと思います。OOoはフォントおよびグリフの組の発見作業を頑張って行いますが、どうしても見つけられなかった場合には、文書中で指定されているフォント名の文字列をそのままWindowsに対して依頼します。すると、Windowsは知らないフォント名に対してはMS 明朝で表示するというわけです。

発見できなかった場合に、ツール/オプション/Writer/規定のフォント で指定しておいたフォント名が使われるべきである。というご意見は、わからないでもないのです。ところが、そのダイアログで指定している「規定のフォント」のスタイル名は、標準、見出し、リスト、図表番号、目次と索引の5つです。ニコンさんは、「標準」の設定値を使えばいいのではないかというお考えだと思います。はたしてそれでいいのか。例えばスタイル「タイトル」はやっぱりゴシック体ですよね。ところが「標準」は「MS P明朝」になっているわけでして。いやその、できない理由を探しているわけではないのですが、そこのダイアログの「規定のフォント」は、ちょいと用途が違うような気がいたします。

まぁ、前向きに考えていきましょう。

閑話休題

Tora (2007-04-06 05:04:21 (金))

ちょいと横道にそれますが、、、

「一般フォントファミリー」という日本語を英語へ翻訳し戻すと、General font family になりますよね。ところがどっこい、原文は、General ではなく、Generic ですよね。異なる単語です。

というのが、あえて私が「一般フォントファミリー」という日本語の用語をわざと使わず英語表記のままにしているわけなんです。だって、Generic font family を無理やり訳すと、「一般的なフォントファミリー」とか「総称的なフォントファミリー」っていうような長ったらしい訳語になってしまうので。

でも、そのような長ったらしい訳語のほうが誤解が少なくていいと思うけどなぁ。と思いつつ。

なせそう話をむずかしくしてしまうのか理解不能

ニコン (2007-04-06 05:04:25 (金))

単なるWebブラウザでさえ日本語における一般フォントファミリーの指定や表示は問題なく行われているのですから、それと同様の仕組みを取り入れればいいだけのことでしょう。すでに他の場面では実現されている技術がなぜOpenOffice.orgではダメなのか不思議で仕方がないのです。私のような、開発に携わったことのない、一般ユーザにはそういう考え方しかできません。

オフィス文書とWeb文書とは違うという偏見があるから、いつまでたってもその垣根を越えられずにいるのではありませんか。

一般フォントファミリーの話と、全般的なWeb文書適性の話は、別問題として切り分けてくださいね。

EL (2007-04-06 05:54:32 (金))

>オフィス文書とWeb文書とは違うという偏見

ということですが、偏見ではなく、やはり違うものであって区別すべきだと私は思います。
Web文書に適したように作られた文書を、同じデータを用いて単純に「手に取ることのできるページものの印刷物」にしたのでは、やはりあまり見栄えがよくありません。時代は変わったとはいえ、まだまだOffice Suiteとして印刷適性を犠牲にした文書作成ソフトでよいという風潮にはなっていませんし、今後もそうはならないでしょう。ワープロソフトはあくまで印刷物をどう作るかというところからスタートして、ネイティブファイルのWebへの親和性や文書の内部構造や文字アクセシビリティといった問題は、前者を犠牲にしないようにしながら徐々に対応していくのが今の形です。それにはかなりの時間がかかります。
ただ、ある程度シームレスに扱うことができれば、それはいいことですよね。総論賛成というやつです。


あと、細かいことで申し訳ないですが、ご自身が開発に携わったことのない一般ユーザだとおっしゃるのなら、「それと同様の仕組みを取り入れればいいだけのことでしょう」などと簡単に実現できるかのように言い放ってしまうのはあまり感心できません。単なるWebブラウザでさえ、その単なる表示を正しくこなすために、開発者によって涙ぐましい努力が行われているのですから。

※だからWebブラウザのような「単純な」ソフトが世に数多は存在できないんです。IE以外の代表的なブラウザ(表示エンジン)が数えるほどしか存在しないのは、作るのが難しいからです。

難しい話は、難しい

catch (2007-04-06 12:02:37 (金))

皆さんの博識さと議論の深さに敬服しております。途中から(というか、ほとんど最初から)ついていけずに、ROMになっておりました。
ELさんがコメントしておいでのように「これは余談ですが、フォントの問題はほんとに難しいです」。そのとおりだと思います。

また、現在の状況と将来の理想を同時に語ることの難しさも感じております。「オフィス文書とWeb文書とは違う」というのは、まさに現在の状況だと思います。私の勤める会社でも、メールの添付ファイルでExcelファイルやパワポファイルが大量に送られてきます。でも、これが将来にわたって同じか、同じであるべきか、統合されるならどのようになっていくのか、単純にブラウザの現状実装にあわせればいいのか、このあたりは大いにディスカッションしていくところだと思います。

Google docs&Spreadsheetのようなアプローチもありますし、IBMもロータスノーツでいよいよOpenDocument対応を始めようとしています。もちろん、Microsoftも対応をすすめています。OpenOffice.orgも現状のままではいられないとは思いますが、ここはただのQ&Aサイトに過ぎません。改善への道のりは長くなりますので、じっくりとお付き合い頂き、議論を深めて頂ければと思います。

おまけ:Toraさん、いつも詳しい情報ありがとうございます。Toraさんの情報は、全体的に拡散傾向にあるように感じております。とくに、「さらに教科書体、行書体、ポップ体なども、必要です。」というのは、Wordの付属フォントを使っている人が多いという現状から来ていて、本当に必要か疑問に思いました。論点をしぼる機会を増やしてもらうと良いんじゃないかと思いました。

教科書体、行書体、ポップ体など

ニコン (2007-04-06 12:54:25 (金))

Windowsに限って言えば、OSに標準で付属している日本語のフォントはゴシック体と明朝体の2種類しかありません。MS Wordなどに付属しているフォントを使えるような環境の人がわざわざOpenOffice.orgを使うかというのも疑問です。OpenOffice.orgにデフォルトで日本語フォントが付属していない以上、フォント指定で有効な種類(一般フォントファミリー)はせいぜいゴシック体か明朝体の2種類しかないというのが現状です。

にもかかわらず、現状ではその2種類でさえまともに認識できずにいるというお粗末な状況です。5種類の一般フォントファミリーすべてを考慮せずとも、日本語環境ではせめてこの2種類だけでもまともに表示できるようにしてもらいたいものです。(Mozillaでは本来5種類設定できるところを、Firefoxではゴシック体と明朝体、等幅の3種類だけの設定になっているという例もあります。IEはもっと適当です。)

標準で利用できるフォントの状況は、Windowsに限らず他のOSでも似たようなものではありませんか?

Re: 教科書体、行書体、ポップ体など

Tora (2007-04-06 13:54:51 (金))

ELさんが指摘されているように、共通的な認識がまだ無いのです。ニコンさんがおっしゃるそのOSに標準で付属している最低限の明朝体系とゴシック体系においても、

serif は、「MS P明朝」にしましょうか。「MS 明朝」にしましょうか。
sans-serif は、「MS Pゴシック」にしましょうか。「MS ゴシック」にしましょうか。

それすら決まっていないのに、というか、決められないのに、作れといわれても。。。
開発って、コンピューターって、おばかなんです。融通が利かないのです。正確に厳密に定義しないと実装できないんです。すんませんです。

逆に、Windowsが提供しているそれらの最低限の4つのフォントを Generic font family の5つだけでは、指定できないのです。

中途半端な仕様では、作っても、ゴミになるだけです。

蛇足ですが、開発って、お金が掛かるんです。機能を追加するってことは、メニューが増える、オンラインヘルプの内容が増える、翻訳作業が増える、テスト作業が増える、不具合があればその改修のために作業が増える、、、

わずか、1%にも満たないだろうWebデザイナーの知識がある人だけがハッピーになる、しかし99%の人は使わない、という機能は、コストとそのリターンと比較すると、開発するべきではないという答えがでるのは自明だと思います。OpenOffice.orgのターゲットユーザー層は、エンタープライズ系でしたら、営業、総務、人事、開発、マーケティング、、、などであって、Webデザイナーではないのです。

いくら簡単に実現できそうであっても、かかるコストに対するリターンを明確に説明・説得できない限り、そのような機能は、「あったらいいね。無くても困らないね。」というレベルで止まってしまいます。

だから、すくなくとも 33% 以上のユーザーがハッピーになるような仕様を一緒に考えましょう。と言いたいのです。もっというと、全世界のユーザーの 33% 以上、アジア圏で 99% 以上のユーザーがハッピーになるような仕様を考えましょ。

ちょっとグチってしまいました。

ぐち

Tora (2007-04-06 14:06:00 (金))

>現状ではその2種類でさえまともに認識できずにいるというお粗末な状況です。

はい。その状況で、OpenOffice.orgのターゲットユーザー層の99%以上のユーザーは、困っていないわけですから。売り言葉に買い言葉をすると、今のままでいいのではないでしょうか。フォント名のテキストボックスにわざわざ serif や sans-serif と手打ちし、そして、その手打ちした結果が期待通りにならない。とおっしゃられても、それはそもそも使い方・発想の仕方がずれているよ。といわれても仕方ないでしょう。

serif と sans-serif を最初に考えた人って、アジア圏の明朝体やゴシック体のことも考慮していたのかなぁ。たぶんしていなかったのじゃないかなぁ。後になって、アジア圏の人たちが、欧米のserifは明朝体に対応させちゃえ、sans-serifはそうだなぁゴシック体にしちゃえ。って無理矢理対応づけただけじゃないのかなぁ。

問題を分けましょう

M.Kamataki (2007-04-06 14:15:09 (金))

メイリオなどのフォントのない環境での問題と、理想のフォント環境についての議論を分けましょう。

前者については、「メイリオ、モトヤシータ゛など存在しない環境での問題」(faq/4/411)で検討したいと思います。

こちらは理想のフォント環境についての議論の場とします。

あきれた

ニコン (2007-04-06 14:27:08 (金))

すべて開発者の仕事とする必要などないことはすでに述べた通り。
serifならMS 明朝にするのかMS P明朝にするのかといったことはユーザが任意で設定すればいいでしょう。そういう既存のウェブブラウザの発想を取り込めば開発者の負担は減るだろうし、いまどきのインターネットユーザはそれくらいの知識はあるだろうし、これからはもっと浸透してゆくでしょう。開発者がやることはせいぜい、現在もあるフォント置換テーブルの設定にserifなどの一般フォントファミリーに適当なフォントをデフォルトで設定しておくことくらいでもじゅうぶんなのです。ユーザがその設定で気に入らなければ変更するのは自由です。ウェブブラウザの設定では皆やってることでしょう。ユーザCSSを作成しなければならないようなむずかしいことではありません。

これ以上ここで発言すると、開発者の視点から一般ユーザとしての自分が馬鹿にされているようで気分が悪いので、もうやめにします。いつまでもここで愚痴っていればいい。

私がここで開発者の立場より一般ユーザの立場を優先して発言しているのは、このソフトを使う人たちというのは開発者よりも一般ユーザのほうが圧倒的に多いわけで、その多くが初心者であろうと想定してのことです。さらに、このソフトで作られた文書がインターネット上で配布され、利用される環境は何もOpenOffice.orgだけとは限りません。規格が標準化されたことで、将来的にも永続的に利用され続けるわけで、OpenOffice.orgというソフトの開発が終わってからも、文書の利用は続くことになるのです。そういう視点でものを考えていけば、「自分の環境だけよければ」という発想ではいけないことくらいわかるでしょう。

何を言ってもネガティブな意見しか出てこないので、後は勝手にやってください。あきれた。

とりあえず

M.Kamataki (2007-04-06 14:53:47 (金))

Toraさんの拡散した意見については、無視していただけますか。個人的に説得すればどうにかなります。

それよりも、フォントが表示されない問題(faq/4/411)のほうが気になるのです。

再び拡散していませんか

catch (2007-04-06 18:49:38 (金))

>serif は、「MS P明朝」にしましょうか。「MS 明朝」にしましょうか。
>sans-serif は、「MS Pゴシック」にしましょうか。「MS ゴシック」にしましょうか。
>
>それすら決まっていないのに、というか、決められないのに、作れといわれても。。。


作れという話ではないと思います。仕様にいたるコンセプトを明確にしようという話ではないでしょうか。

現在の論点は、いくつかの点に集約されませんか。

  • 日本語のフォントについて、フォントファミリーを指定する仕組み
    • フォントファミリー名の対応フォントは、自動で選択する
    • フォントファミリー名の対応フォントは、ユーザーが手動で設定する(*)
  • 各フォントに対応するフォントファミリー名
    • たとえば、serif は、「MS P明朝」か「MS 明朝」か
    • 教科書体、行書体、ポップ体などのファミリー名をどのようにするか

      この二つをごっちゃにしないことが、重要ではないでしょうか。

ニコンさん、教えていただけませんでしょうか。

Tora (2007-04-06 22:24:09 (金))

まずは、お耳汚し。

お客: ごめんください。お塩をください。
店番: はいはい。この伯方の塩をどうぞ。
お客: いえいえ、盛り塩に使うので安いのでいいです。


お客: ごめんください。お塩をください。
店番: はいはい。この安いのでいいですね。
お客: いえいえ、お料理に使うので、おいしいお塩をください。


お客: ごめんください。お塩をください。
店番: はいはい。おしを、よかったね。あんさんをお嫁さんに欲しいって。
お客: いえいえ、お宅の おしを さんではなくて、、、


というわけで、どうやら、私は、かねてからアイデアがあった「明朝体」や「ゴシック体」に関する開発ネタについても、これ幸いと、ニコンさんに一緒に売りつけようとしているのかもしれません。

ニコンさん、教えていただけませんでしょうか。

まず、どんなことをOpenOffice.orgで実現しようとしたかったのでしょうか。
そして、それらのいくつかの実現したい事柄のなかで、今すぐ一番実現してもらいたいことは、どれでしょうか。

いきなり、何も無いところから突然、本件の頭書のお題目「sans-serif などの Generic font family で指定すると日本語が期待通りのフォント種別で表示されるべきだ。」が出てきたわけではないと思います。

上の例でいえば、盛り塩をしたいのでしょうか。お料理をしたいのでしょうか。
1つ教えてくださいといいながらお願いなのですが、WebデザイナーやHTMLなどの知識があまり無い私のようなその分野でいうと高校生レベルぐらいの人にもわかるような概念、実例、用語などを使ってご説明いただけるとありがたいです。
そして、さらに、そのニコンさんがまず今すぐ一番やりたいことは、OpenOffice.orgの HTMLエディタ で実現したいことでしょうか。それとも、CalcやImpress、Baseなどでも実現したいことなのでしょうか。

一番基本中の基本を作るのは、たぶん比較的簡単です。

Tora (2007-04-06 22:47:50 (金))

フォルダ C:\Program Files\OpenOffice.org 2.1\share\registry\data\org\openoffice の中のファイル VCL.xcu をエディタなどで編集すればいいわけです。

そのファイルの中の、

       <node oor:name="FontSubstitutions">

という部分に、以下のような ja (日本語)用の要素を追加し、

               <node oor:name="ja" oor:op="replace">

さらに以下のように、Generic font family の各名称に対応した設定内容を定義すればいいわけです。

                       <node oor:name="serif" oor:op="replace">
                               <prop oor:name="SubstFonts">
                                       <value>MS P明朝;IPA P明朝;...(略)...</value>
                               </prop>


現在、これをユーザーが変更するユーザーインターフェースはOpenOffice.orgにはありません。言葉を変えれば、ユーザーは上記の設定内容を変更できません。

もしユーザーが設定変更したいのであれば、
・案1: OpenOffice.org に新規開発を行い、上記ファイルの設定内容をマウスや画面などでユーザーが簡単に変更するための機能を追加する。
・案2: ユーザーが上記ファイルを「ワードパット」などのエディタを使って手修正する。

また、何度も述べていますが、serif や sans-serif をフォント名のテキストボックスに手打ちするというような使い方では、Generic font family に関する知識を持っていないほとんどの一般のユーザーは「使えません」。それが、使えない・使わない中途半端な機能は、作るだけ無駄だ。と述べている理由です。

>ユーザが任意で設定すればいいでしょう。
について、ニコンさんが100万円ぐらい費用を出して、具体的にはOpenOffice.orgのサイトに募金などの形態で、いただけるのであれば、私も片棒を担いでもいいです。

ユーザーが設定するためのダイアログを1つ追加すると、それに関するオンラインヘルプの内容を記述するテクニカルライター、その内容を数十言語に翻訳する翻訳代、そのダイアログの動作を確認するテスター、その機能が追加されたよと広報するマーケティング、などの費用・人件費が、ソースコードを書く人に加えて掛かってきます。

100万円でも足りないかもしれません。でも、多くのユーザーが欲しがっている機能であれば、別の論理が働きます。全体の開発費数億円の中から別の開発項目を削ってこちらの開発を優先させるのです。

というわけで、簡単そうだというだけでは、実現はしないです。

こういう方法もあると思うのです。

catch (2007-04-06 23:16:24 (金))

  • 案1: OpenOffice.org に新規開発を行い、上記ファイルの設定内容をマウスや画面などでユーザーが簡単に変更するための機能を追加する。
  • 案2: ユーザーが上記ファイルを「ワードパット」などのエディタを使って手修正する。
  • 案3:VCL.xcuをカスタマイズして、エクステンションで配布

Re:こういう方法もあると思うのです。

EL (2007-04-07 03:11:51 (土))

それは一部私も考えていました。
案3の、カスタマイズされたVCL.xcuを配布するという考え方です。
または、VCL.xcuのバックアップを取りカスタマイズ版と差し替えるまでを自動で行うプログラムの配布、かもしれません。
VCL.xcuの日本語適性向上版プロジェクト、のようなものをでっちあげるという方向ですね。

ただ、私家版VCL.xcuだけでは解決しない問題もありそうです。システムに存在しない「あるフォントA」を指定した文書の中で、あるところには「フォントB」が、またあるところには「フォントC」が表示に使われているケースを散見するあたり、不在フォントの自動置換表示に関する問題は、なかなか根が深そうです。

ありがとうございました

Tora (2007-04-07 15:48:13 (土))

>serifならMS 明朝にするのかMS P明朝にするのかといったことはユーザが任意で設定すればいいでしょう。

とのことですが、オフィス文書においては、それでは困るんです。

Aさんが1枚の用紙にぴったりと収まるようにと「serif = MS P明朝」の環境で作成しメールで送った文書をBさんが「serif = MS 明朝」の環境で開くと、文字間が伸びてしまって行数が増えてしまい、2枚の用紙へはみ出してしまいます。

ですので、serif = ○○のフォントについては、せめてプロポーショナルなフォントであるのか等幅なフォントであるのかぐらいは、「統一」しておかないといけません。統一しておかないと、serif を使うとレイアウトが大きくずれることがあるから使わないように。というようなマイナス面的なTIPSになってしまいます。

というわけで、

見たい側がフォント名を設定すればいいじゃん型のWebブラウザと、作成側がフォントを指定する型のオフィス系ソフトとの大きな違い。

HTMLによる紙にする必要はなし画面上に内容があればそれでいい。というような文化と、紙に印刷してなんぼというオフィス文書の文化との求めているものの違い。

OpenOffice.orgのターゲットユーザー層は、オフィスワークする人、プレゼンする人、表計算する人などであり、WebデザイナーやHTML・CSSの知識をもった人とは少し異なる。

というような観点から、私としては、本件についての検討優先順位を下げます。他のOOoのターゲットユーザー層にとって有益な機能の検討へ移ります。例えば、「Word上で行数・文字数指定をしていると、Writerで開いた時にレイアウトが大きく崩れる場合がある。の対策」などです。

本件では、とても勉強になりました。今後、「プロポーショナルな明朝体」、「等幅なゴシック体」のような Generic なフォント名をオフィス系ソフトに導入するような検討のときに、参考にさせていただきます。

ありがとうございました。

OpenOffice.orgはオフィス以外でも使われるもの

Arot (2007-04-07 17:11:23 (土))

OpenOffice.orgだとかMS Officeだとかいう名前からか、この種のソフトは「オフィスで使うもの」と決め付けられがちだが、ワープロや表計算ソフトは一般家庭でも普通に使われているもの。「印刷されること」は必ずしも前提条件ではないということになぜ気がつかないのか。画面上でスクリーンリーダーを使って読む人もいるだろうし、HTMLよりもポータブルな資料(PDF同様に)として活用している人などにとっては画面上で読めれば十分であって、印刷など必要ない(印刷もできるというだけのことだ)。マニュアルやチュートリアルの類をWriterやImpressで作って配布することだってあるだろう。画面上で見栄えよくするためのデザインのひとつとしてフォントの設定があるわけで、それを作者の意図したものに近いものにしようという努力のどこが悪いというのだ。というより、必要不可欠なことだろ。

OpenOffice.orgはオフィス以外でも使われるもの2

Arot (2007-04-07 17:47:31 (土))

faq/4/408 に添付されているImpressの文書なんかは画面で表示するために作られているもので、印刷は想定外であろう。もともとは自分のパソコンで表示してプレゼンテーションするために作ったんだろうけど、こうして一般公開されれば、様々な閲覧環境でも問題なく表示できるようなフォントの設定は必要だ。閲覧者側が自分でフォントの設定をしなおすとしても、Impress文書のように特定のスタイルを使うよりも、文字ごとに書式を設定しているような文書の場合には、そのすべてのフォントの設定をいちいち書き換えたり、対応するフォントの置き換えテーブルを作るのは非常に困難な作業だ。閲覧者はどのフォントが使われているかなんてことは、あらかじめわからないからだ。実際、ここのPDFでの表示とODPでの表示を見比べるとぜんぜん違う。場合によっては文字化けするんだろうけど、単に資料を閲覧したいだけの人間にとっては大変な迷惑だ。「DF特太ゴシック体」なんて普通はパソコンに入ってないんだから、一般公開するんなら、せめて「MS ゴシック」くらいは入れておいてほしい。後々のことも考えれば、ODF文書は形式に関わらず、最初から様々な閲覧者の環境を考慮したフォントを指定して作っておくべきだ。それを効率的にするのが「一般フォントファミリー」の概念であろう。

Re:OpenOffice.orgはオフィス以外でも使われるもの

catch (2007-04-07 21:37:38 (土))

>OpenOffice.orgだとかMS Officeだとかいう名前からか、
>この種のソフトは「オフィスで使うもの」と決め付けられがちだが、
>ワープロや表計算ソフトは一般家庭でも普通に使われているもの。
>「印刷されること」は必ずしも前提条件ではないということに
>なぜ気がつかないのか。


「オフィスと一般家庭の両方で使われる」ということと、「印刷を前提にする/しない」ということの関連性が、よく分かりませんでした。
オフィスでも、印刷するところもあれば、ペーパーレスを推進しているところがあるでしょう。
一般家庭でも、あまり印刷しないところと、年賀状などバリバリ作るところがあるでしょう。
この件については、「印刷を前提にする人/前提にしない人」が混在しているという状況のもとで、ディスカッションする必要があるのではないでしょうか。

ペーパーレス

Arot (2007-04-07 23:41:01 (土))

ペーパーレスを推進しているところもあるという事実だけでも理解できてればたいしたもんだがな。印刷前提派の考えってのは、そういうのを無視してるだろ。

今では画面で読むための文書を作るのもワープロソフトの仕事である。

まず、確認ですが、

EL (2007-04-08 02:27:22 (日))

混在する「印刷を前提にする人/前提にしない人」双方に共通して、実現できたらいいなということがあると思うんです。そこの確認をしたいと思います。

変な抜き出し方をして申し訳ないのですが、Arotさんの提起した、

>デザインのひとつとしてフォントの設定があるわけで、それを作者の意図したものに近いものにしようという努力~

という部分。ここではないでしょうか。印刷しようがするまいが、紙であろうが画面であろうが、たとえばファイルの作者が明朝系に指定した場所は明朝体で表示してほしいというのは、共通意識だと思うんです。
レイアウトが(フォント固有の字幅や行間に依存して)崩れるかどうかは、また別の問題で、これと先の問題を切り分けたほうが、議論がスッキリするかと思います。


私はOOoを印刷物作成目的で使うことがほとんどですが、指定したフォントのない環境でも意図に近いフォントで表示されることは大歓迎です。私はそれなりにヘビーユーザなほうですが、実はフォント名を複数列挙して指定できることはこのお話に参加するまで知りませんでした。単一マシン(※同一のフォント環境)で作業してレイアウトをカッチリ確定させて印刷もしくはPDF化する前提なら、複数列挙の必要は全くありません。つまり現状で既に複数列挙できるようになっているということは、ある程度、Webブラウザのような不特定多数の閲覧者に優しい考え方が組み込まれているわけです。それを推し進めていきましょうという話ですから、すべてのOOoユーザにとって有益なことだと思います。

【追記】私の最初の水の差し方が悪かったなぁと感じています。確かに今の印刷向けに提供された機能の使い勝手が犠牲になるような仕様変更は私は望んでいません。でも、もちろん、Web文書として機能するための対応レベルも高い方がいいに決まってます。フォントの指定・置換問題しかり、HTMLorPDF変換時の文字アクセシビリティしかり・・・現状より水準を高めていくべきなのは私も感じています。まるで「(全く)変えてほしくない」みたいな物言いで誤解を与えてしまって申し訳ないです。

Re: ペーパーレス

Tora (2007-04-08 10:45:43 (日))

「印刷を前提にする人/前提にしない人」という議論を、さらに細分化する必要があると思います。

オフィスソフトには、複数のゴールがあると思います。
(a) 指定された枚数きっかりの印刷物
(b) いつでも印刷しようと思ったらそうできるようにレイアウトしておくけど、印刷することは自体は主目的としていなく情報を伝えることを主目的としている文書等
(c) 印刷はまったく考えていなくて、単に画面表示ができればいい文書等

(a)の例として、イベント会場などで配布するためのチラシや製品紹介のパンフレットなどを作るのでしたら、デザインとしてのフォントが変ってしまったり、実際に使用される物理的なフォントの違いによってレイアウトが変化してしまうのは、言語道断でしょう。それに対しては、PDFのようにフォントのグリフのデータを埋め込むという方向へ対応させるのが、一番手っ取り早いのではないでしょうか。OOoのファイルでもPDF同様にフォントのグリフデータを埋め込むという議論があるのは、そのためだと思います。そのような用途・ゴールにおいては、Generic font family というような概念は必要なく、作者の環境で編集・表示されるフォント・レイアウトを、そのような環境がない表示側(ダウンロードしたお客さんだけでなく印刷屋さんも含む)でもいかに忠実に再現できるようにするか、ということになります。

(b) の例としては、現在の多くの日本的な企業やお役所などでしょう。ペーパーレスだ。と唱えながらもやはり紙にもできる安心感がないと困る。

(c) の例としては、言うまでもありませんね。そのような例では、印刷しようと思えば、Webブラウザのように自動的に複数の紙へレイアウトして印刷してくれるような機能が充実していればいいわけです。

現在の日本(日本語)のOOoのターゲットユーザー数や用途は、(a) > (b) > (c) の順ではないかと私は捉えています。よって、(c)の優先順位は2007年4月の段階では一番低く、(c)の検討を進めるよりも先に (a), (b) の充実を図るべきであると考えています。(c)の用途に対しては、現時点ではHTMLをきれいに作成できる他のソフトウェアを使えばよいのではないでしょうか。

Re: ペーパーレス

catch (2007-04-08 11:18:16 (日))

現在の日本(日本語)のOOoのターゲットユーザー数や用途は、
(a) > (b) > (c) の順ではないかと私は捉えています。


これは何か根拠があるでしょうか?
個人的な印象ということで、このような結論に至ったというのであれば、あまり説得力がないように思いますが、 まあ、そこを主張するよりも、次の点を説明して頂くのが良いんじゃないでしょうか。

  • 現在のOOoでは、画面に表示するとき自動的にフォントなどを割り当てる機能が、○○○な仕組みになっていて十分に機能しない場合がある
  • また、この機能を小手先で改修しようとしても、○○○なので無理がある
  • だから、優先順位はここではあがらない

あと、toraさんの役割についても知らない人がいると思うので、それを説明してもいいかも。

お名前:
題名:


添付ファイル: filefaq4_349_richomincho.png 512件 [詳細] filetext.png 843件 [詳細] fileWriterWeb.html 610件 [詳細] fileSeaMonkey.png 930件 [詳細] fileVCL.xcu 1102件 [詳細] filefaq4_379_01.png 452件 [詳細]