วางที่: Text > Source Text Run Number พร้อมข้อความหน้า–หลัง
รันตัวเลขทศนิยม ใส่คอมม่า และกำหนดข้อความหรือหน่วยประกอบได้
// --- ตั้งค่า
startValue = 0;
endValue = 1234567.89;
startTime = 0;
endTime = 3;
prefix = "รายได้รวม: ";
suffix = " บาท";
// --- คำนวณรันนัมเบอร์
t = clamp(time, startTime, endTime);
progress = (t - startTime) / (endTime - startTime);
value = ease(progress, 0, 1, startValue, endValue);
// --- ฟังก์ชันใส่ comma
function addCommas(num) {
s = num.toFixed(2).toString().split(".");
intPart = s[0];
decPart = s[1];
rgx = /(\d+)(\d{3})/;
while (rgx.test(intPart)) {
intPart = intPart.replace(rgx, "$1" + "," + "$2");
}
return intPart + "." + decPart;
}
// --- แสดงผล
prefix + addCommas(value) + suffix;
วางที่: Text > Source Text Run Number สำหรับวางคู่กับภาพ
แสดงเฉพาะตัวเลข เหมาะกับเลย์เอาต์ที่มีไอคอนหรือองค์ประกอบอยู่ด้านข้าง
// --- ค่าเริ่ม-สิ้นสุด
startValue = 0;
endValue = 9876543.21;
startTime = 0;
endTime = 4;
// --- คำนวณ
t = clamp(time, startTime, endTime);
progress = (t - startTime) / (endTime - startTime);
value = ease(progress, 0, 1, startValue, endValue);
// --- ฟังก์ชันใส่ comma
function addCommas(num) {
s = num.toFixed(2).toString().split(".");
intPart = s[0];
decPart = s[1];
rgx = /(\d+)(\d{3})/;
while (rgx.test(intPart)) {
intPart = intPart.replace(rgx, "$1" + "," + "$2");
}
return intPart + "." + decPart;
}
// --- แสดงผล (ไม่มีข้อความประกอบ)
addCommas(value);
วางที่: Text > Source Text Slider Control พร้อมคอมม่า
เชื่อมค่ากับ Slider Control แล้วเติมหน่วยท้ายตัวเลขได้อย่างรวดเร็ว
slider = effect("Slider Control")("Slider");
num = Math.round(slider).toString();
num_with_commas = num.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
// แทนที่คำว่า "บาท" ด้วยหน่วยที่คุณต้องการ
num_with_commas + " บาท";
หมายเหตุ: เพิ่ม Effect > Expression Controls > Slider Control ให้เลเยอร์ข้อความก่อน
วางที่: Text > Source Text Run Number มากกว่า 1 ล้าน
ตั้งค่าตัวเลขปลายทาง ระยะเวลา ข้อความด้านหน้าและหน่วยด้านหลังได้
// เริ่มต้น Run Number
startNumber = 1;
// จำนวนที่ต้องการ (เช่น 1 ล้าน หรือมากกว่า)
endNumber = 1000000000;
// ระยะเวลาในวินาที
durationInSeconds = 10;
// ข้อความก่อนและหลังตัวเลข
prefix = "ข้อความก่อน ";
suffix = " หน่วย";
// ฟังก์ชันเพิ่มคอมมา
function addCommas(num) {
var parts = num.toString().split(".");
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
return parts.join(".");
}
// คำนวณเวลาและตัวเลข
currentTime = time;
progress = ease(currentTime, 0, durationInSeconds, startNumber, endNumber);
// แสดงผลพร้อมคอมมา
prefix + addCommas(Math.round(progress)) + suffix;