現在、HTMLを作成しているのですが、
画面で入力した情報を取得して、
PDFに反映させるといったことをしています。
そこで、テキストエリアに入力したままを
PDFに出力する箇所があるのですが、
テキストエリアのcolsで指定したバイト数よりも
全角文字が多く入ってしまうので、
PDFと画面で若干ずれが生じています。
現在はcols88でフォントはMSゴシックを指定しています。
この場合ですと、1バイト文字()は88バイト(88文字)入るのですが、
2バイト文字(全角文字)だと94バイト(47文字)
入ってしまいます。
フォントはゴシックとほぼ同じ種類だったら
問題ないので、フォントで対応できる場合も
ご教授ください。
又、この問題はどうしようもない問題とご存知でしたら、
そちらもご教授ください。
よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
「MS ゴシック」が、完全な等幅フォントではない(全角と半角の名場が異なる)ことが原因です。
ただし、フォントサイズが 1.5 の倍数の時には、完全な等幅になるようなので、フォントサイズを 12 あたりに設定してやるとよいでしょう。
<TEXTAREA style="font:12px 'MS ゴシック'" cols="88"></TEXTAREA>
このようにしておけば、全角/半角が混じっても、88バイト分しか入らなくなります。
ご回答ありがとうございます。
1.5の倍数時に等幅なるというので
問題が解決しました。
フォントサイズを9にすることにしました。
助かりました、ありがとうございます。
No.2
- 回答日時:
こんにちは。
COLSとかかれているからには、<TEXTAREA>のほうですよね?となると、MAXLENGTHで指定するわけにもいきませんね。
(しかも、MAXLENGTHの解釈はIEとNNで異なり、文字数だったりバイト数
だったりするので汎用性がないですし・・・)
試していないので申し訳ないのですが、<TT>でうまくいかないでしょうか?
TeleType、等幅フォントとするタグです。
プロポーショナルフォントを使うと、どうしても1バイト文字2つと2バイト文字1つ
の幅が同じにはならないと思いますので。
#フォントの見栄えが変わってしまいますが・・・
この回答への補足
ご回答ありがとうございます。
ご教授頂いた<TT>を以下のように試したのですが、
<TT>タグがきかないようです。
【試したHTML】
<TT><TEXTAREA></TEXTAREA></TT>
そこで、少し<TT>を試したところ
ラベル系の文字に効果が出るようでした。
しかし、
12345678901234567890
あいうえおかきくけこ
と<TT>タグ付のラベルで試したところ
若干ずれが生じるみたいです。
他の方法がございましたら、ご教授お願い致します。
No.1
- 回答日時:
テキストエリアに、
MAXLENGTH=n(入力可能な文字数)
を追加して下さい。
例
<INPUT TYPE="TEXT" NAME="UID" VALUE='' SIZE=12 MAXLENGTH=8>
で、半角で8文字まで入力可能になります。
この回答への補足
早速のご回答ありがとうございます。
また、質問の内容が曖昧ですいませんでした。
テキストフィールドであれば
MAXLENGTHを使用して制限が可能ですが、
テキストエリアだと無理だと思います。
また、MAXLENGTHの場合は、文字数になってしまうので、
全角文字でもMAXLENGTHで指定した文字数まで
入力可能になってしまいます。
今回はバイト数で制限したい状態です。
曖昧で申し訳ございませんが、
よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 政治 私の発明した「二階建て漢字」は使えるでしょうか? 3 2023/02/08 16:40
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- その他(インターネット接続・インフラ) Webサイトのフォント・級数変更について 1 2022/10/18 18:08
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- C言語・C++・C# VisualStudioのソースコードで漢字を使いたい 4 2022/05/21 10:16
- Word(ワード) ワードフォント 一括置換の方法 4 2022/12/31 00:27
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
- C言語・C++・C# プログラミングの問題です。至急教えてください。 /***から***/の部分をプログラミングにしてほし 1 2022/10/13 11:48
- PDF I LOVE PDF利用 pdfからWordに変換について 回答お願いいたします。 無料のI LOV 1 2022/05/13 13:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
入力規則のリストの文字の大き...
-
テーブル内の文字サイズを変更...
-
ペイント3Dのテキストサイズ変更
-
テキストエディタmiの表示文字...
-
alertで表示させる文字サイズは...
-
奇数のフォントサイズ指定について
-
【スタイルシート】 半角と全角...
-
チェックボックスのサイズ変更...
-
アンドロイドスマホでのphp ech...
-
セレクトボックスの幅を指定し...
-
英サイト(UTF-8)内での全角文字...
-
プルダウンメニュー内のフォン...
-
タイ語と日本語混在のサイトを...
-
”ヒラギノ明朝Pro”をWindowsで...
-
印刷文字が急に大きくなった。
-
<table></table>内のFONT指定に...
-
HTMLでの全角スペース
-
IEとfirefox、行間の表示が異...
-
HTMLでHGPゴシックEを表現する...
-
VBAでListViewのフォントを変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
入力規則のリストの文字の大き...
-
テーブル内の文字サイズを変更...
-
ペイント3Dのテキストサイズ変更
-
alertで表示させる文字サイズは...
-
テキストエディタmiの表示文字...
-
VBAでListViewのフォントを変更...
-
エクセルで文字が勝手に大きく...
-
alertで、アイコンの変更、又は...
-
コピーライト記号の表示が小さい
-
英サイト(UTF-8)内での全角文字...
-
セレクトボックスの幅を指定し...
-
<pre>タグ内のフォントサイズに...
-
”ヒラギノ明朝Pro”をWindowsで...
-
MoveWindowで位置だけ変更する...
-
HTMLでHGPゴシックEを表現する...
-
パスワード欄の"●"文字を小さく...
-
アンドロイドスマホでのphp ech...
-
インラインフレーム内の文字の...
-
accessのレポートで文字間隔を...
-
奇数のフォントサイズ指定について
おすすめ情報