شاشة يابانية متقدمة باستخدام معالجات محتوى مخصصة

تحديث الصفحة :
تاريخ إنشاء الصفحة :

حول العرض الياباني

الرسم النص في MonoGame يستخدم SpriteFont وكذلك XNA. لSpriteFont، راجع عرض الأحرف الأبجدية الرقمية وتفاصيل نمط الخط، كما هو نفس XNA.

إذا كنت تستخدم SpriteFont، يجب تحديد الأحرف التي تريد استخدامها مسبقاً. إذا كان فقط الرموز الأبجدية الرقمية، يمكن أن يتم مع أي تكلفة تقريبا كمواصفات حرف وبناء الوقت لأنه حوالي 100 حرفا، ولكن عندما يتعلق الأمر اليابانية، يصبح الآلاف من الأحرف، بحيث يصبح وقت بناء طويلة للغاية. إذا قمت بتحديد الأحرف فقط التي سيتم استخدامها، يمكن اختصار وقت البناء إلى حد ما، ولكن من المزعج تحديد الحرف الذي سيتم استخدامه في الاتجاه المعاكس، ويصبح أكثر إزعاجًا إذا كان هناك تغيير في الحرف الذي سيتم استخدامه.

ردا على هذه المشكلة ، "نيناري GD"الموقع قد تم تخصيصها لجعل الرسم اليابانية في XNA أكثر سلاسة (بالمناسبة ، موقع تشغيل Yuichi إيتو -- MSFT هي واحدة من المطورين إطار XNA). وهذا يجعل من السهل تحديد الأحرف لاستخدام، تقصير وقت البناء، وتزيين الأحرف، وأكثر من ذلك. لمزيد من المعلومات، يرجى الرجوع إلى الرابط.

WPF フォントプロセッサーで作成されたテキストの描画

ومع ذلك، "معالج الخط WPF" المعروضة في الصفحة هو ل XNA ولا يمكن استخدامها كما هو في MonoGame. لذا أود أن أنفذ هذا إلى (مونجام)

تنزيل معالج الخط WPF

افتح المواقع التالية:

ひにけにGD - 真・簡単(かもしれない)日本語表示

قم بالتمرير لأسفل إلى ارتباطين، وانقر فوق الارتباط أعلاه لتنزيل المشروع الذي يحتوي على رمز الفرز. أقل واحد هو فقط DLL، لذلك لم يكن لديك لتحميل البرنامج.

プロジェクトをダウンロード

الرجاء استخراج الملف الذي تم تنزيله حتى تتمكن من استرداد المحتويات.

ダウンロードされたファイル

إنشاء مشروع معالج خط WPF

أود أن إنشاء WPF معالج الخط DLL الذي يعمل مع "أي وحدة المعالجة المركزية" ، ولكن لسبب ما عندما أقوم بإنشاء مشروع مع "مكتبة تمديد خط أنابيب المحتوى" من إطار عمل XNA ، لا أستطيع إلا أن إنشاء في x86 ، لذلك أنا سوف تخلق من مكتبة فئة عادية هنا.

クラス ライブラリの作成

عند إنشاء مشروع، لا تحتاج إلى "Class1.cs"، لذا احذفه.

「Class1.cs」の削除

بعد ذلك، إضافة مرجع.

参照の追加

لأنك ترسم نصًا في WPF، فأنت بحاجة إلى مرجع مرتبط بـ WPF. أولاً، تحقق من "PresentationCore" من "Framework".

「PresentationCore」にチェック

بعد ذلك، تحقق من "قاعدة Windows". الآن اضغط على الزر موافق لتأكيد وفتح "إدارة المراجع" مرة أخرى.

「WindowsBase」にチェック

حدد استعراض على اليسار وانقر على الزر استعراض أدناه.

「参照」ボタンをクリック

فتح مسار المجلد التالي:

  • C: \\ ملفات البرنامج (x86)\MSBuild\MonoGame\v3.0\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\1998

من هناك، إضافة DLLs جهازي التالية:

  • MonoGame.Framework.dll
  • MonoGame.Framework.Content.Pipeline.dll

2つの DLL を追加

تأكد من أنه تم التحقق من وانقر فوق OK الزر.

チェックされていることを確認

راجع المراجع التي تمت إضافتها.

追加された参照を確認

إضافة التعليمات البرمجية المصدر من المجلد "WpfFontPipeline" من المشروع الذي قمت بتحميله إلى المشروع الذي تقوم بتحريره حالياً.

ソースコードを追加

الحالة التي أضفتها.

追加した状態

تحقق من أن تكوين البنية هو "الإصدار" و "أي وحدة المعالجة المركزية".

ビルド構成が「Release」「Any CPU」になっていることを確認

تنفيذ بناء لمعرفة ما إذا تم إنشاؤه بنجاح.

ビルド結果

DLL هو الذي تم إنشاؤه.

DLL が作成されていることを確認

إنشاء مشروع لعبة

إنشاء مشروع لـ MonoGame. لا يهم ما هو النظام الأساسي.

MonoGame のプロジェクトを作成

وضع DLL الذي قمت بإنشائه في المجلد Content. لا يهم حيث DLL ، ولكن في هذه الحالة ستحتاج إلى مسار نسبي أو مطلق ، لذلك سأتركه هنا في الوقت الحالي.

 DLL を Content フォルダに配置

افتح Content.mgcb وفتح مراجع مع المحتوى المحدد.

إذا قمت بالنقر المزدوج فوق "Content.mmcb" لا فتحه، بدء تشغيل "خط أنابيب أحادية" من القائمة ابدأ.

References を開く

في مربع النص، اكتب اسم الملف من DLL الذي قمت بإنشائه للتو أو المسار نسبة إلى أو مسار مطلق من Content.mgcb.

بعد إعدادها، DLL لا يزال لا يعكس، لذلك بمجرد حفظ المشروع، إنهاء خط أنابيب أحادية اللعبة ثم إعادة فتحه.

DLL のファイル名を入力

إنشاء خط العفريت. حدد "تحرير" >إضافة→ البند الجديد من القائمة.

スプライトフォントを作成

حدد "وصف SpriteFont" من بين العناصر لإضافته. (وبالمناسبة، بعد إضافة SpriteFont، فتحت الملف SpriteFont لتسهيل الرؤية في وقت التشغيل وتغيير اسم الخط والحجم.)

「SpriteFont Description」を選択

إذا قمت بتحديد SpriteFont التي قمت بإضافته، سترى أن يتوفر معالج الخط WPF من المعالج.

「WPF フォントプロセッサー」が選択できる

منذ كل معلمة يمكن تعيين، هذه المرة حاولت تعيينها كما هو مبين في الشكل في الوقت الحاضر. لسوء الحظ، لا يمكنك تغيير اللون في الإصدار الحالي من خط أنابيب MonoGame.

各パラメータ設定

حاول البناء تم بناء 6860 حرفا لأنها شملت ما يصل إلى مستوى JIS 2. ومع ذلك ، فإن الوقت حوالي تسع ثوان ، لذلك يمكنك أن ترى أنه سريع جدا.

ビルド完了

الآن، نحن نرسم باستخدام هذا SpriteFont، ورمز هو بالضبط نفس XNA. يمكنك رسم نص باستخدام التعليمات البرمجية التي تم تقديمها في "عرض الأحرف الأبجدية الرقمية" كما هو. بالطبع، اليابانية ممكنة أيضا.

أود أن أضع فقط رمز التي أضفت مرة واحدة.

جزء التعريف من الحقل. "SpriteFont" تمت إضافته.

GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;

SpriteFont font;

تحميل وإنشاء بيانات الخط في الأسلوب LoadContent.

protected override void LoadContent()
{
  // Create a new SpriteBatch, which can be used to draw textures.
  spriteBatch = new SpriteBatch(GraphicsDevice);

  // TODO: use this.Content to load your game content here

  // フォントデータの読み込み
  font = Content.Load<SpriteFont>("Font");
}

الرسم مع اليابانية في طريقة رسم.

protected override void Draw(GameTime gameTime)
{
  GraphicsDevice.Clear(Color.CornflowerBlue);

  // TODO: Add your drawing code here
  spriteBatch.Begin();

  spriteBatch.DrawString(font, "真・簡単(かもしれない)日本語表示",
                    new Vector2(50, 50), Color.White);

  spriteBatch.DrawString(font, @"・OpenTypeフォント対応
・処理速度の高速化
・JIS漢字追加機能
・文字装飾",
              new Vector2(50, 150), Color.White);

  spriteBatch.End();

  base.Draw(gameTime);
}

عند تنفيذها، يتم رسم النص. من الصعب قليلاً فهمها، لكن الحروف لها حدود وتدرجات زرقاء في الداخل.

أصبح من السهل رسم اليابانية مثل هذا، وأصبح من الممكن رسم الحرف مع الديكور.

テキストの描画結果

وأخيراً، لا يمكنك تغيير لون زخرفة النص على خط أنابيب أحادية اللون، ولكن يمكنك فتح الملف مباشرة وتعديله.

بمجرد حفظه وإغلاقه المشروع، افتح الملف .mccb كملف نصي.

「.mgcb」ファイルをテキストファイルで開く

إذا قمت بالتمرير لأسفل، هناك معلومات اللون في المعلمة الهدف، لذا يرجى تحريرها مباشرة هناك.

色情報を直接編集

بعد حفظ النص، افتح خط أنابيب أحادية اللعبة مرة أخرى ثم قم ببناءه. يمكنك أن ترى أن اللون قد تغير عند تشغيله.

色変更したテキスト