MathML (Mathematical Markup Language) একটি XML ভিত্তিক ভাষা যা গাণিতিক সমীকরণ এবং বৈজ্ঞানিক তথ্য সঠিকভাবে উপস্থাপন করতে ব্যবহৃত হয়। তবে, সব ব্রাউজারে MathML-এর পূর্ণ সমর্থন না থাকায়, MathML রেন্ডারিংয়ের জন্য অতিরিক্ত টুল বা লাইব্রেরি ব্যবহৃত হতে পারে। এক্ষেত্রে MathJax একটি জনপ্রিয় JavaScript লাইব্রেরি, যা MathML, LaTeX এবং AsciiMath সমর্থন করে এবং গাণিতিক সমীকরণগুলি ওয়েব পেজে সঠিকভাবে প্রদর্শন করতে সহায়তা করে।
MathJax ব্যবহার করে MathML রেন্ডারিং করার মাধ্যমে আপনি MathML কোডের মাধ্যমে গাণিতিক সমীকরণগুলি ওয়েব পেজে সঠিকভাবে এবং সুন্দরভাবে প্রদর্শন করতে পারবেন।
১. MathJax কি?
MathJax একটি ওপেন সোর্স JavaScript লাইব্রেরি যা গাণিতিক সমীকরণ, বৈজ্ঞানিক সূত্র, এবং অন্যান্য গাণিতিক উপাদান সঠিকভাবে প্রদর্শন করতে ব্যবহৃত হয়। এটি LaTeX, MathML, এবং AsciiMath ফরম্যাট সমর্থন করে এবং ইন্টারনেট এক্সপ্লোরার (IE), গুগল ক্রোম, মজিলা ফায়ারফক্স, সাফারি, অপেরা, ইত্যাদি সহ বিভিন্ন ব্রাউজারে গাণিতিক সমীকরণ রেন্ডারিং করতে সক্ষম।
MathJax ব্যবহার করার মাধ্যমে আপনি MathML কোডের মাধ্যমে গাণিতিক সমীকরণ উপস্থাপন করতে পারবেন, এমনকি সেসব ব্রাউজারে যেখানে MathML পূর্ণভাবে সমর্থিত নয়।
২. MathJax সেটআপ
MathML রেন্ডারিং করার জন্য MathJax সেটআপ করা অত্যন্ত সহজ। নিচে MathJax ইনস্টল এবং ব্যবহার করার ধাপগুলি দেওয়া হলো।
২.১ MathJax ইনক্লুড করা
MathJax ইনস্টল করতে, আপনাকে শুধু আপনার HTML পেজে MathJax এর লাইব্রেরি যোগ করতে হবে। আপনি এটি CDN (Content Delivery Network) এর মাধ্যমে সহজেই যোগ করতে পারেন।
<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML">
</script>
এটি MathJax লাইব্রেরি আপনার ওয়েব পেজে যুক্ত করবে এবং এটি MathML সমীকরণ রেন্ডার করতে সক্ষম হবে।
২.২ MathML কোড লেখার উদাহরণ
MathJax ইনস্টল করার পর, আপনি MathML কোডের মাধ্যমে গাণিতিক সমীকরণ উপস্থাপন করতে পারেন।
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>MathML with MathJax</title>
<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML">
</script>
</head>
<body>
<h1>MathML Example with MathJax</h1>
<p>This is a simple MathML equation rendered with MathJax:</p>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
</math>
</body>
</html>
এখানে:
<script>ট্যাগটি MathJax লাইব্রেরি যুক্ত করছে।<math xmlns="http://www.w3.org/1998/Math/MathML">MathML কোডের মাধ্যমে গাণিতিক সমীকরণ প্রকাশ করছে।
এই কোডটি একটি সমীকরণ প্রদর্শন করবে, এবং MathJax এটি সঠিকভাবে ওয়েব পেজে রেন্ডার করবে।
৩. MathJax এর কনফিগারেশন
MathJax ব্যবহার করার সময় আপনি বিভিন্ন কনফিগারেশন সেট করতে পারেন। যেমন, আপনি MathML রেন্ডারিং পদ্ধতি কাস্টমাইজ করতে পারেন বা সেটি প্রাধান্য দিতে পারেন। নিচে একটি কনফিগারেশন সেট করার উদাহরণ দেওয়া হলো:
<script type="text/javascript">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$', '$'], ['\\(', '\\)']],
displayMath: [[''], ['\\[', '\\]']],
processEscapes: true
},
messageStyle: "none",
showMathMenu: false
});
</script>
এখানে:
tex2jaxকনফিগারেশনটি MathJax কে LaTeX এবং MathML সমীকরণ রেন্ডার করার জন্য নির্দেশনা দেয়।messageStyleকনফিগারেশনটি MathJax-এর বার্তাগুলোকে বন্ধ করে দেয়।showMathMenuকনফিগারেশনটি MathJax এর কনটেক্সট মেনু লুকিয়ে রাখে।
৪. MathJax ব্যবহার করে আরও জটিল MathML সমীকরণ
MathJax ব্যবহার করে আপনি আরও জটিল গাণিতিক সমীকরণ যেমন ইনটিগ্রাল, ডেরিভেটিভ, সিম্বলিক সমীকরণ ইত্যাদি MathML কোডের মাধ্যমে প্রকাশ করতে পারেন।
উদাহরণ: ∫ f(x) dx (ইন্টিগ্রাল সমীকরণ)
<math xmlns="http://www.w3.org/1998/Math/MathML">
<msup>
<mo>∫</mo>
<mrow>
<mi>f</mi>
<mo>(</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
</msup>
<mi>d</mi>
<mi>x</mi>
</math>
এটি একটি ইন্টিগ্রাল সমীকরণ MathML-এ তৈরি করবে এবং MathJax এর মাধ্যমে সঠিকভাবে ওয়েব পেজে প্রদর্শিত হবে।
উপসংহার
MathJax একটি শক্তিশালী লাইব্রেরি যা MathML কোড সঠিকভাবে রেন্ডার করতে সহায়তা করে, এমনকি ব্রাউজারগুলিতে যেখানে MathML সমর্থিত নয়। MathJax ব্যবহার করে আপনি ওয়েব পেজে গাণিতিক সমীকরণগুলি সহজে এবং সুন্দরভাবে উপস্থাপন করতে পারবেন। MathJax গাণিতিক সমীকরণ রেন্ডারিংয়ের জন্য একটি অত্যন্ত কার্যকরী এবং ব্যাপকভাবে ব্যবহৃত টুল।
Read more