フォントの半角・全角について、もしご存知のかたがいらっしゃいませいたら、どうぞお教えください。

Word2000、IME2000で文章を作成する際、等幅フォント(MS-ゴシック)を使っております。
このとき、全角の数字を10個並べた場合は
半角の数字を20個並べたときと同じ幅になると思っていたのですが、
行の右端で、やはり半角数字が少しはみ出てしまいます。
これは、文字と文字の間の空白の関係で仕方ないことなのでしょうか?

以前、ワープロを使っていた際には、
半角といえば全角の文字の幅のきっちり半分だったのですが、
パソコンの場合はこれは不可能なのでしょうか?

また、数字に関して、「半角」「全角」という表現はおかしいのでしょうか。
「直接入力」と「全角」という表現が適切なのでしょうか。

A 回答 (5件)

最近のワープロソフトではlinusさんがおっしゃるような現象がおきます。


これは意図的にそうしているのです。

文字というのは等幅に並べると見た目のバランスが悪くなるのです。そこで文字によって、次の文字との間隔を変えることにより見た目のバランスを良くしているのです。
(たとえば、"I"を表示するときは、隣接する文字との間隔を狭くします)
これはパソコンに限ったことではなく、レタリングするときに使う技法です。
たぶん中学や高校の美術で習ったはずです。(私は習いました)

昔のワープロソフト(一太郎Ver3等)は上記のような高級な機能がなかったのですが、最近のワープロソフトにはあります。
Windowsのテキストエディタ(メモ帳)にはこの機能がないので、全角10文字と半角20文字は同じ長さになりますよ。

>また、数字に関して、「半角」「全角」という表現はおかしいのでしょうか。
>「直接入力」と「全角」という表現が適切なのでしょうか。
別におかしくないですよ。
厳密には、全角=「2byte文字」、半角=「1byte文字」と言ったほうがいいのかもしれませんけどね。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
なるほど、やはり文字と文字との間隔によって変わっているのですね。
さらに、見た目のバランスをよくするためのものだったとは・・・

今回フォントについてのあれこれを調べましたが、
今では「全角なのに1バイト」とか「半角なのに2バイト」という文字が存在するのだと耳にしました。
これからは、今までの認識が覆ってしまうこともあり得るのではないかと、
少し不安に思ってしまいました。

助かりました、本当にありがとうございました。

お礼日時:2001/06/22 16:26

再び。


No.3 の方の回答に食い下がって (^^;
ワープロが意図的に処理を施しているのではなくて、マイクロソフトの製品全般で
同じ現象がおこります。 なので、メモ帳でも再現します。
メモ帳で、フォントを10ポイントにした場合と9ポイントにした場合では明らかに幅の
違いがわかりますよ。
フリーやシェアの "テキストエディタ" では、等幅フォントの幅の狂いが出ない
ように対策が施されています。
    • good
    • 0
この回答へのお礼

マイクロソフト社の製品で起こってしまう現象なのですか。
というと、フォントの関係というよりも、
それを使うアプリによって異なってしまうということなのですね。

いろいろなソフトで試してみて、うまい配置ができるものを試してみたいと思います。

たびたび、ありがとうございました!

お礼日時:2001/06/22 16:33

ちょっと話が違うかもしれませんが、


Word2000であれば、「均等割り付け」を使えばピッタリそろえてくれますよ。
ただし、ページ幅めいっぱい使いますけど。
    • good
    • 0
この回答へのお礼

わたしも実は、「均等割り付け」の機能を試してみたのですが、
例えば「○文字分」という指定したスペースの中に
自分が入力したい文字をムリヤリ押し込んでしまうので(笑)、
ひとつひとつの文字の幅そのものが変わってしまうのですよね?
この点に、うーん・・・と思ってご質問をさせていただいておりましたのです。

ですが、この機能は実は便利だなーと思って感心してました。
どうもありがとうございました!

お礼日時:2001/06/22 16:30

No.1の方がおっしゃる通りですが、ちょっと補足です。


別の可能性としては、「全角・半角文字すべてのフォントをMSゴシックにした
つもりが、実はそうなっていない」ということも考えられます。

Wordの場合、日本語用のフォントと英数字用のフォントを別々に設定できますが、
これを違うものに設定している場合(例えば英数字はArialとか)、文字を選択して
ツールバーのフォントメニューでフォントを選んだだけでは、英数字のフォントは
変わりません。

例えば、あらかじめすべてをMSゴシックに設定した「1234567890」
(全角)と「1234567890」(半角)が混在する文書を「すべて選択」して、
ツールバーのフォントメニューで「MS明朝」に変更しても、半角のほうは
どういうわけか、MSゴシックのまま変わりません。

書式→フォントのダイアログで、日本語・英数字ともMSゴシックになっているか
どうか、確認してみて下さい。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
Wordの【書式】→【フォント】では、日本語フォントを「MS-ゴシック」、
英数字用のフォントを「(日本語用と同じフォント)」として設定しております。
しかし、以前この設定をする前には、おっしゃっていただいたとおり、
「すべて選択」でフォントを変えても半角が変わらない、という現象が起きておりました。
この点についても、今後も気をつけてみたいと思います。

お礼日時:2001/06/22 16:21

等幅フォントではそのような怪奇現象?が起こります。


フォントのサイズ(ポイント)を 1.5 の倍数にすると問題が解消されますよ。
例えば 9.0 ポイントとか 10.5 ポイントを使えば OK です。
お試しあれ。
    • good
    • 0
この回答へのお礼

早速のご回答を、ありがとうございました。
フォントサイズを1.5の倍数にするとは・・・
そういった裏技のようなものがあるとは知りませんでした。
とても参考になりました。ありがとうございました。

お礼日時:2001/06/22 16:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q全角半角変換 C++/CLI

C++/CLI(VC++2008) で
(1)たとえば 東京bay を 東京bay にという風に全角半角混在の文字列のなかの半角文字を全角文字に変換するにはどうすればよろしいでしょうか
(2)全角半角混在の文字列のなかの全角文字を半角文字に変換するにはどうすればよろしいでしょうか
 

Aベストアンサー

1. VBのStrConvを使う。

#using "Microsoft.VisualBasic.dll"
using namespace Microsoft::VisualBasic;

String^ s1 = L"東京bay";
// 全角文字へ
String^ s2 = Strings::StrConv(s1, VbStrConv::Wide, 0);
// 半角文字へ
String^ s3 = Strings::StrConv(s2, VbStrConv::Narrow, 0);


2. Win32 API LCMapStringを使う。

#include "windows.h"
#include "vcclr.h"
#pragma comment(lib, "kernel32.lib")

String^ s1 = L"東京bay";
pin_ptr<const wchar_t> p1 = PtrToStringChars(s1);

array<wchar_t>^ b2 = gcnew array<wchar_t>(s1->Length + 1);
pin_ptr<wchar_t> p2 = &b2[0];
::LCMapStringW(LOCALE_USER_DEFAULT, LCMAP_FULLWIDTH, p1, -1, p2, b2->Length);
String^ s2 = gcnew String(p2);

array<wchar_t>^ b3 = gcnew array<wchar_t>(s1->Length + 1);
pin_ptr<wchar_t> p3 = &b3[0];
::LCMapStringW(LOCALE_USER_DEFAULT, LCMAP_HALFWIDTH, p2, -1, p3, b3->Length);
String^ s3 = gcnew String(p3);

1. VBのStrConvを使う。

#using "Microsoft.VisualBasic.dll"
using namespace Microsoft::VisualBasic;

String^ s1 = L"東京bay";
// 全角文字へ
String^ s2 = Strings::StrConv(s1, VbStrConv::Wide, 0);
// 半角文字へ
String^ s3 = Strings::StrConv(s2, VbStrConv::Narrow, 0);


2. Win32 API LCMapStringを使う。

#include "windows.h"
#include "vcclr.h"
#pragma comment(lib, "kernel32.lib")

String^ s1 = L"東京bay";
pin_ptr<const wchar_t> p1 = PtrToStringChars(s1);

a...続きを読む

Q半角から全角に変わる・・・。

いくつか持ってるフリーアドレスのメールチェックをしてると、いつの間にか半角から全角に変わっててSHIFTを押さないと半角にならないようになります。どこを押せば解除できるか教えて下さい。

カテゴリが分からなかったのでこちらで質問させて頂きました。

初心者的な質問ですが、分からないので回答宜しくお願いいたします。

Aベストアンサー

シフト+caps lock英数ですよ。

Q全て全角文字かチェックしたい

PHP Version 5.1.6を使っています。
UTF-8だと全角文字が3バイトとして扱われるので、
半角文字のチェックのままだと3倍の文字制限が必要になってしまいます。

例:
[名前] 最大全角10文字まで
半角を入力した場合:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
全角を入力した場合:あああああアア亜亜亜

半角文字だと3倍の30文字まで入力できてしまうので、
なんとかして全角文字だけ入力したかチェックする正規表現が知りたいです。

Aベストアンサー

全角文字だけ入力されるという前提ならば
http://phpspot.org/blog/archives/2005/11/php_17.html
http://ifs.seesaa.net/article/26300967.html
この辺が参考になりますかね。
鬼車が入っているかによってやり方も変わってくるかと思います。

Q半角英数文字が全角に・・・?

OSwin2000で作ったホームページのデータ
(DW4.0でホームページ作成)を
FDに落とし、OSwin95,98で読み取ると、
一部データが半角から全角に変わってしまいます。
OSwin2000のデータが半角になっているかどうか、
何回も確認したのですが、・・・・?
ファイル形式のせいでしょうか?
PCの初心者です。

Aベストアンサー

なぜインターネットオプションでエラーになるのかは判りませんが、とりあえず Win 98 2000 双方で、ワープロソフトなどを使って MS ゴシックと MS Pゴシックの違いを確認してみてはどうでしょう。

どちらの環境で見ても MS ゴシック同士、MS Pゴシック同士が同じように見えていて、P 付きと P なしフォントの文字幅の違いがお困りの状態と一致しているのなら、単純にフォントの違いによるものと考えていいと思います。

最初の投稿でも書きましたが、HTML の実体はテキストファイルです。
テキストファイルは Word や一太郎などのワープロソフトのように文章の「フォント情報」「段落情報」「レイアウト情報」などはファイル内に記録されません。
同じテキストファイルでも環境によって違う書体に見える場合、それはシステム (OS) またはそれを扱うソフト (ドリームウェーバーやホームページビルダーなど)の設定で指定されているフォントが違うことが原因になります。

基本的にどんなソフトでも「全角文字」として入力しなければ、全角文字になることはありません。
そこで、表示するフォントや半角/全角などを自由に指定できるワープロソフトを使い、フォントの違いによる見え方の違いを知っておくといいと思います。

なかなかややこしいですが、要は全角/半角だけでなくフォントの違いによっても文字幅などの見え方が違うということを理解していれば問題はないと思います。

なぜインターネットオプションでエラーになるのかは判りませんが、とりあえず Win 98 2000 双方で、ワープロソフトなどを使って MS ゴシックと MS Pゴシックの違いを確認してみてはどうでしょう。

どちらの環境で見ても MS ゴシック同士、MS Pゴシック同士が同じように見えていて、P 付きと P なしフォントの文字幅の違いがお困りの状態と一致しているのなら、単純にフォントの違いによるものと考えていいと思います。

最初の投稿でも書きましたが、HTML の実体はテキストファイルです。
テキストファイル...続きを読む

Q【超基礎】全角文字数とバイト数の数え方

氏名を格納するmynameという項目があるとします。ここには
全角10文字まではOK、全角11文字以上ダメ、
という文字数制約を設けたいと思います。


MySQL側:
myname varchar(20) なフィールドをテーブルに作成し、

PHP側:
if (strlen($myname) > 20) {
echo "全角10文字までにしてください";
}

としました。

HTML側で、
「小泉純一郎」と入れたら、全角6文字なのに
「全角10文字までにしてください」と出てしまいます。


全角10文字まではOK、全角11文字以上ダメ、
とするには、
MySQL側:varchar(20)
PHP側:> 20
の数字をいくつにすればいいですか。
全角は2バイトだと思ってたのですが。

Aベストアンサー

入力を受け付けている文字コードによります。
エンコードがUTF-8の場合なら、文字コードによって1~3バイトになります。(全角文字はほとんどが3バイトのようです。)

参考URL:http://q.hatena.ne.jp/1115052744

Q半角/全角入力キーを使いた~い。

カテゴリー通りのWIN95を使用しているのですが、
入力に関する質問です。
パソコンを二台使用していて
一つはWIN98でもう一つが95なのですが
98の方は、キーボードの左上のESCキーの下の
半角/全角のキーを押したら入力モードが変わるのですが
95の方は押しても半角(英数)から全角(ひらがな)に変わりません。
全角の状態で押してみるとひらがなからカタカナ(全・半角)に変わるだけで
英数には変わりません。
ひらがなで打ちたい時に一々手動(ツールバー?)で切り替えてます。
せっかくキーボードについているのに使えません・・・。
仕方のないこと?
もし何か設定でもあるとしたら教えてください。

Aベストアンサー

私が使っているのは、WIN95ですが、半角/全角キ-のみで変更できます。
OSの問題でなくて、MS-IMEのバージョンの問題でないでしょうか?。
私の場合では、Win95でMS-IME2000ならうまくいきますが・・。
MS-IME97では単独の半角/全角キ-でうまくいきません。「ALT」+「半角/全角」でしか変換できませんでしたが・・。
MS-IMEのバ-ジョンをお確かめ下さい。

Q全角と半角を確認するには

受け取ったデータ表の中で全角と半角が入り混じっている場合、セルによっては半角「A」とか全角「A」に入力モードが切り替わって判別できるものもありますが、全角なのにそのセルをポインタすると半角モードのままというセルもあります。(半角だとカウントせず、全角だとカウントされるので全角だと判断できます)
どうしてなのか実験してみたところ、全角で入力後に半角での入力規則を設定しているみたいです。
この判別を簡便にする方法はありますか。
全角か半角か判別して回答をしてくれるような数式はありますか?
(例えば、作業列に「全」「半」などと表示されるような)
データの種類が多いため意図的に全角、半角の使い分けを入れている箇所もあるようなのですが。

Aベストアンサー

こんばんは

ソフトが分かりませんが、Officeのコーナーであることと、「セル」という言葉が使われていることから、Excelではないかと推測して回答します。

ソフト名とバージョン(2003, 2007など)が分かると回答しやすくなります。


Excelには「文字列操作関数」がありますので、それを上手く使うと出来ます。
例えば「ASC関数」という全角を半角にする関数をつかうと
=ASC(A1)=A1
で、セルA1の値が全角か半角かが判断できます。
これをIF関数に組み込んで
=IF(ASC(A1)=A1,"半角","全角")
とすれば、ご質問の様なことが出来ます。

ただし、セルの中に全角が1字でも混ざっていれば「全角」の判断になります。

Qエクセルで入力した半角カタカナを全角表示に直したい。

エクセルで、表を作りました。
半角カタカナで入力して表が完成したのですが、全角カタカナに表示をし直したいのです。

また最初から入力し直さなければならないでしょうか?
説明不足で、大変申し訳ありませんが、補足等促して頂ければ幸いです。

よろしくお願いします。

Aベストアンサー

全角に直す関数(JIS)で求めればOKです。
これでおわかりになりますか?

Q半角/全角キーで入力モードの切り替えができません

ひらがな入力モードと英数入力モードの切り替えを半角/全角キーで行っていたのですが、半角/全角キーを押しても切り替えができず、「‘」が入力されます。どうすれば元のように切り替えができるようになるでしょうか。

Aベストアンサー

まずWindowsのメモ帳などのテキストエディタで Alt + 半角/全角 で切り換えられないか試してみてください。この場合はコントロールパネルからMS-IMEの設定を変更することが可能です。

これができない場合は、Internet Explorerなど特定のアプリケーションで問題が発生する場合と、メモ帳などのテキストエディタを含めてすべての場面で発生する場合があります。半角英数の@を入力すればわかります。

特定のアプリケーションでキーボード レイアウトが英語になる

http://support.microsoft.com/kb/880629/ja

英語キーボードと日本語キーボードの違い

http://unit.aist.go.jp/itri/knoppix/howto/keyboard/keyboard.htm

すべてのアプリケーションでキーボードレイアウトが英語になった場合は、別の処置が必要です。

http://www.pfu.fujitsu.com/hhkeyboard/hhkb_support/faq_kokuin.html

まずWindowsのメモ帳などのテキストエディタで Alt + 半角/全角 で切り換えられないか試してみてください。この場合はコントロールパネルからMS-IMEの設定を変更することが可能です。

これができない場合は、Internet Explorerなど特定のアプリケーションで問題が発生する場合と、メモ帳などのテキストエディタを含めてすべての場面で発生する場合があります。半角英数の@を入力すればわかります。

特定のアプリケーションでキーボード レイアウトが英語になる

http://support.microsoft.com/kb/880629/ja

英...続きを読む

Q全角ひらがな入力モードになっているのに半角英数が。。

WINDOWS98SEですが、全角ひらがな入力モードになっているのにタイプすると半角英数が表示されます。これは、ひらがなにモードを切り替えた直後だけで、一度表示されてしまった半角英数をDeleteすると、(モードの切替などをしなくても)次からはひらがなで表示されます。自宅(NEC VU55L45D)も会社も同じ症状が出ます。95やNT4.0ではこういった現象は経験したことがありません。98特有のトラブルなのでしょうか?
よろしくお願いします。

Aベストアンサー

再登場
Microsoft IME 98 Service Release 1.1 アップデート プログラム.
をDLして下さい
http://www.microsoft.com/japan/support/kb/articles/J049/1/25.asp

参考URL:http://www.microsoft.com/japan/support/kb/articles/J049/1/25.asp


人気Q&Aランキング

おすすめ情報