トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     文字数を数えたい
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
TJFORD
Åê¹ÆNo.39506
投稿日時: 2008-7-11 15:28
半人前
居住地: Tokyo
投稿: 42
使用環境:
:Flash CS3
文字数を数えたい
お世話になります。
現在ティッカーを作成しており、xmlからテキストを読み込んでいます。その中で長いテキストは切り落としたいのですが、半角と全角をflash内で区別することは可能でしょうか。
半角は0.5文字、全角は1文字としてカウントしたいのです。

できるかできないかだけでも構いませんのでよろしくお願いいたします。
Tonpoo (gaienboy改め)
Åê¹ÆNo.39509
投稿日時: 2008-7-11 16:00
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: 文字数を数えたい
gaienboyです。このあたりが参考になるでしょうか↓

【ActionScript】全角半角の判別はできますか? -OKWave
http://okwave.jp/qa3351087.html


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

TJFORD
Åê¹ÆNo.39518
投稿日時: 2008-7-11 19:33
半人前
居住地: Tokyo
投稿: 42
使用環境:
:Flash CS3
Re: 文字数を数えたい
早速ありがとうございます。
ご紹介いただいた記事をもとにコードを書いてみました。
getStrWidth()に元テキストと文字数を引数として渡す感じです。

var before:String = "てすとテストtesttest";
var after:String = getStrWidth(before, 10);
trace("結果は、【"+after+"】");

function getStrWidth(str, num):String {
var counter:Number = 0;
var i:Number = 0;
var myString:String = "";
while (num>counter) {
if (str.charCodeAt(i)<=255) {
counter += .5;
} else {
counter += 1;
}
trace(counter);
var aaa:String = str.substr(i, 1);
trace(str.substr(i, 1));
myString+=aaa;
i++;
}
return myString;
}
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops