اذهب إلى المحتوى
  • 0

ربط برنامج math type بموقع مكتوب باستخدام php

Masrawy Edu

السؤال

Recommended Posts

  • 0

يمكنك القيام بذلك باتباع الخطوات التالية:

  1. عليك تنزيل إضافة mbstring على السيرفر و تفعيلها.
  2. عليك نسخ المجلد generic_wiris من مجلدات الإضافة و وضعه في ال root للسيرفر الخاص بك، من ثم عليك فتح الملف generic_wiris/configuration.ini و ضبط الإعدادات التي تريدها.
  3. يجب أن يكون المستخدم على السيرفر له صلاحيات تنفيذ لمحتويات المجلد generic_wiris/integration.

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

MathType هو برنامج يسمح لك بإنشاء وتحرير الصيغ الرياضية في مستندات الوورد والويب. يمكنك استخدام MathType مع PHP عن طريق استخدام البرمجة المباشرة للاتصال بالبرنامج وتوليد الصيغ الرياضية.

لربط برنامج MathType بموقع مكتوب باستخدام PHP، يجب تنفيذ الخطوات التالية:

1- تأكد من أن برنامج MathType مثبت على جهاز الخادم الخاص بك.

  • تنزيل إضافة mbstring: هي إضافة PHP مهمة تتيح العمل مع النصوص المتعددة البايت. يمكن تنزيلها عن طريق مدير حزم PHP أو بتثبيتها يدويًا.
  • نسخ المجلد generic_wiris: هو المجلد الذي يحتوي على ملفات MathType الأساسية. يمكن العثور عليها في مجلدات الإضافة المثبتة لـ MathType. يجب نسخ هذا المجلد ووضعه في ال root الخاص بالخادم.
  • تهيئة الملف configuration.ini: يحتوي هذا الملف على الإعدادات الأساسية لنظام MathType. يجب فتحه وضبط الإعدادات التي تريدها، مثل نوع الرسومات وحجم الخط ولغة العرض وغيرها.
  • تهيئة صلاحيات المستخدم: يجب أن يكون للمستخدم صلاحيات تنفيذ لمحتويات المجلد generic_wiris/integration. هذا يمكن تحقيقه عن طريق تعيين الصلاحيات الصحيحة للملفات والمجلدات.

2- قم بإنشاء نموذج HTML يحتوي على مربع نص يحتوي على صيغة رياضية تريد إدراجها باستخدام MathType. في هذا المثال، نحن سنستخدم مكتبة jQuery للوصول إلى مربع النص وإرسال النص إلى برنامج MathType.

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>MathType Demo</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script type="text/javascript" src="http://localhost/mathtype/MathType.js"></script>
</head>
<body>
    <input type="text" id="mathInput" name="mathInput" />
    <button onclick="sendToMathType()">Insert MathType Formula</button>
    <script>
        function sendToMathType() {
            var mathText = $('#mathInput').val();
            if (mathText !== '') {
                var mathML = MathType.ConvertEquation(mathText, "MathML");
                window.opener.InsertMathML(mathML);
                window.close();
            }
        }
    </script>
</body>
</html>

3- تنفيذ الاتصال مع برنامج MathType باستخدام PHP. في هذه المرحلة، يتم إرسال النص من النموذج إلى PHP ومن ثم يتم إرساله إلى MathType للتحويل إلى صيغة MathML.

<?php
// تأكد من أن $mathInput هو اسم حقل نص الرياضيات في النموذج الخاص بك.
$mathInput = $_POST['mathInput'];

// قم بإرسال نص الرياضيات إلى MathType لتحويله إلى MathML.
$url = 'http://localhost/mathtype/MTScript.php?equation=' . urlencode($mathInput) . '&format=MathML';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);

// يجب عرض نتيجة MathML على صفحة الويب باستخدام العلامة <math> المدعومة بالمتصفح.
// يمكن استخدام النص المنتج لإنشاء العلامة <math> المطلوبة باستخدام PHP DOMDocument.
$dom = new DOMDocument();
$dom->loadXML($result);
$mathml = $dom->saveXML($dom->getElementsByTagName('math')->item(0));

// ثم قم بعرض النتيجة على صفحة الويب باستخدام علامة <math> في النموذج الخاص بك.
echo '<div>' . $mathml . '</div>';
?>

يرجى ملاحظة أن الكود يستخدم cURL للاتصال بـ MathType على localhost. قم بتعديل عنوان URL في حال كان يتم استضافة MathType على مضيف آخر.

بعد ذلك، يمكننا استخدام دالة urlencode لترميز الصيغة ليتم إرسالها بشكل صحيح في الطلب الذي سيتم إرساله لموقع مكتوب. وبعد ذلك، يمكن استخدام دالة file_get_contents لجلب النتيجة من موقع مكتوب، وفك ترميز النتيجة باستخدام دالة urldecode.

وفيما يلي الكود الذي يقوم بإجراء كل هذه الخطوات:

// تعريف الصيغة
$formula = 'x^2 + y^2 = z^2';

// ترميز الصيغة
$encoded_formula = urlencode($formula);

// جلب النتيجة من موقع مكتوب
$url = 'http://www.sitename.com/cgi-bin/mathtype.cgi?eq=' . $encoded_formula;
$result = file_get_contents($url);

// فك ترميز النتيجة
$decoded_result = urldecode($result);

// طباعة النتيجة
echo $decoded_result;

يمكن تغيير قيمة المتغير $formula إلى أي صيغة رياضية أخرى، وستتم معالجتها بنفس الطريقة. ويمكن أيضًا تعديل قيمة المتغير $url ليشير إلى الموقع الذي يتم فيه استضافة برنامج MathType.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...