هدف اصلی از ساخت کتابخانه Abdal Number to Persian Words ارائه ابزاری قدرتمند و کارآمد برای تبدیل اعداد به حروف فارسی است. این کتابخانه با قابلیت پشتیبانی از اعداد بسیار بزرگ (تا سیدسیلیارد) و اعداد اعشاری، راهحلی جامع برای پروژههایی که نیاز به تبدیل دقیق اعداد به متن فارسی دارند، فراهم میکند.
این ابزار به گونهای طراحی شده است که بتواند در کاربردهای مختلف از جمله سیستمهای مالی، تولید فاکتور، و برنامههای فارسیزبان مورد استفاده قرار گیرد. Abdal Number to Persian Words محدودیتهای رایج کتابخانههای مشابه را پشت سر گذاشته و با رعایت کامل قواعد زبان فارسی، امکان افزودن واحدهای سفارشی مانند تومان یا ریال را نیز فراهم کرده است.
برای استفاده از کتابخانه Abdal Number to Persian Words، نیاز به محیط جاوااسکریپت با پشتیبانی از ماژولهای ES6 دارید. در زیر پیشنیازهای لازم برای شروع آمده است:
- Node.js: نسخه 12 یا بالاتر (برای نصب و اجرای پروژه).
- مدیریت بستهها: npm یا yarn برای نصب کتابخانه.
- دانش پایه: آشنایی با جاوااسکریپت و مدیریت پروژههای Node.js.
- ابزار توسعه:
- ویرایشگر کد مانند VS Code یا WebStorm.
- دسترسی به اینترنت برای دانلود کتابخانه از GitHub یا npm.
برای اجرای Abdal Number to Persian Words، به موارد زیر نیاز دارید:
-
مرورگر وب مدرن:
- مرورگرهایی مانند Chrome، Firefox، یا Edge که از جاوااسکریپت ES6 پشتیبانی میکنند.
-
پشتیبانی از جاوااسکریپت:
- اگر کد در محیط مرورگر اجرا میشود، نیازی به تنظیمات اضافی نیست.
-
پشتیبانی از اعداد بسیار بزرگ:
- قابلیت تبدیل اعداد تا سیدسیلیارد (10^99) به حروف فارسی.
-
تبدیل اعداد اعشاری با دقت بالا:
- پشتیبانی از اعداد اعشاری تا 15 رقم اعشار. اعداد اعشاری به شکل دقیق و کامل به حروف فارسی تبدیل میشوند.
-
واحدهای سفارشی:
- امکان افزودن واحدهای پولی یا سفارشی مانند "تومان" یا "ریال" به خروجی.
-
دقت در قواعد زبان فارسی:
- خوانش روان و رعایت کامل دستور زبان فارسی برای تولید متون.
-
انعطافپذیری بالا:
- مناسب برای پروژههای مالی، سیستمهای فاکتورینگ، و هر نوع پروژهای که نیاز به تبدیل اعداد به حروف فارسی دارد.
-
بدون محدودیت در اندازه اعداد:
- تا حداکثر حافظه قابل پشتیبانی سیستم، بدون محدودیت.
-
پشتیبانی از منفی و ممیز:
- امکان تبدیل اعداد منفی و اعداد اعشاری با مقیاسهای کوچک و بزرگ.
-
سازگاری کامل:
- قابل استفاده در مرورگرها و محیطهای سرور (مانند Node.js).
کتابخانه Abdal Number to Persian Words توانایی تبدیل اعداد بزرگ تا سیدسیلیارد را دارد. در زیر لیست کامل مقیاسهایی که این کتابخانه پشتیبانی میکند، آمده است:
- یک
- هزار
- میلیون
- میلیارد
- بیلیون
- بیلیارد
- تریلیون
- تریلیارد
- کوآدریلیون
- کادریلیارد
- کوینتیلیون
- کوینتیلیارد
- سکستیلیون
- سکستیلیارد
- سپتیلیون
- سپتیلیارد
- اکتیلیون
- اکتیلیارد
- نانیلیون
- نانیلیارد
- دسیلیون
- دسیلیارد
- آندسیلیون
- آندسیلیارد
- دودسیلیون
- دودسیلیارد
- تریدسیلیون
- تریدسیلیارد
- کوادردسیلیون
- کوادردسیلیارد
- کویندسیلیون
- کویندسیلیارد
- سیدسیلیون
- سیدسیلیارد
برای استفاده از Abdal Number to Persian Words، میتوانید از دو روش زیر استفاده کنید:
مخزن این کتابخانه را کلون کرده و به پروژه خود اضافه کنید:
git clone https://github.com/ebrasha/abdal-number-to-persian-words.git
سپس فایل اصلی را در پروژه خود وارد کنید.
اگر کتابخانه روی npm منتشر شده است، میتوانید به راحتی آن را نصب کنید:
npm install abdal-number-to-persian-words
کتابخانه را به پروژه خود وارد کنید:
const { numberToWords } = require('abdal-number-to-persian-words');
// تبدیل عدد به حروف فارسی
console.log(numberToWords(123456789, "تومان"));
// خروجی: صد و بیست و سه میلیون و چهارصد و پنجاه و شش هزار و هفتصد و هشتاد و نه تومان
فایل کتابخانه در پوشه dist است را به پروژه HTML خود اضافه کنید:
<script src="path/to/abdal-number-to-persian-words.js"></script>
<script>
console.log(AbdalNumberToWords.numberToWords(123456789, "ریال"));
// خروجی: صد و بیست و سه میلیون و چهارصد و پنجاه و شش هزار و هفتصد و هشتاد و نه ریال
</script>
برای استفاده در زمانی که فیلد های ورودی دارید
<script>
function updateOutput() {
const numberInput = document.getElementById('charge_amount'); // دریافت ورودی عدد
const unitInput = document.getElementById('unit'); // دریافت ورودی واحد
const outputElement = document.getElementById('output'); // دریافت خروجی
const numberValue = numberInput.value.replace(/,/g, ''); // حذف کاما از ورودی عدد
const unitValue = unitInput.value.trim(); // دریافت مقدار واحد
try {
const words = AbdalNumberToWords.numberToWords(numberValue, unitValue); // تبدیل عدد به حروف فارسی
outputElement.textContent = words; // نمایش نتیجه در خروجی
} catch (error) {
outputElement.textContent = "Error: Invalid input."; // نمایش پیام خطا
}
}
// اتصال رویداد به ورودیها
document.getElementById('charge_amount').addEventListener('input', updateOutput);
document.getElementById('unit').addEventListener('input', updateOutput);
</script>
یا می توانید از CDN استفاده کنید
<script src="https://cdn.jsdelivr.net/gh/ebrasha/abdal-number-to-persian-words@1.6/dist/abdal-number-to-persian-words.js"></script>
- اعداد اعشاری:
console.log(numberToWords(123456.789, "ریال"));
// خروجی: صد و بیست و سه هزار و چهارصد و پنجاه و شش ممیز هفتصد و هشتاد و نه صدم ریال
- اعداد منفی:
console.log(numberToWords(-12345, "تومان"));
// خروجی: منفی دوازده هزار و سیصد و چهل و پنج تومان
- اعداد بدون واحد:
console.log(numberToWords(987654321));
// خروجی: نهصد و هشتاد و هفت میلیون و ششصد و پنجاه و چهار هزار و سیصد و بیست و یک
https://alphajet.ir/abdal-donation
دست ساز با عشق توسط ابراهیم شفیعی (ابراشا)
E-Mail = Prof.Shafiei@Gmail.com
Telegram: https://t.me/ProfShafiei
اگر با مشکلی در پیکربندی مواجه هستید یا چیزی آنطور که انتظار دارید کار نمیکند، لطفا از Prof.Shafiei@Gmail.com استفاده کنید.طرح مشکلات بر روی GitLab یا Github نیز پذیرفته میشوند.