NUMBER expression · เริ่มต้น

Run Number

รวม Expression สำหรับรันตัวเลขใน Source Text เลือกเวอร์ชันที่เหมาะกับงาน แก้ค่าที่ระบุไว้ แล้ววางได้ทันที

วางที่: 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;