Kehittynyt japanilainen näyttö mukautettujen sisältöprosessorien avulla

Sivu päivitetty :
Sivun luontipäivämäärä :

Tietoja japanilaisesta näytöstä

Tekstipiirustus MonoGame käyttää SpriteFont sekä XNA. Lisätietoja SpriteFontista on kohdassa Aakkosnumeerisen merkin ja fonttityylin tietojen näyttäminen, koska se on sama kuin XNA.

Jos käytät SpriteFontia, sinun on määritettävä merkit, joita haluat käyttää etukäteen. Jos se on vain aakkosnumeerisia symboleja, se voidaan tehdä lähes ilman kustannuksia kuin merkki erittely ja rakentaa aikaa, koska se on noin 100 merkkiä, mutta kun se tulee japanin, se tulee tuhansia merkkejä, joten rakentaa aika tulee erittäin pitkä. Jos määrität vain käytettävät merkit, koontiaikaa voidaan lyhentää jossain määrin, mutta on hankalaa määrittää käänteisessä merkin, ja siitä tulee vieläkin hankalampaa, jos käytettävä merkki muuttuu.

Vastauksena tähän ongelmaan, "Ninari GD"sivusto on räätälöity tekemään Piirustus Japanin XNA sujuvammin (muuten, sivusto-run Yuichi Ito - MSFT on yksi XNA Framework kehittäjät). Tämä helpottaa käytettävien merkkien määrittämistä, rakennusajan lyhentämistä, merkkien koristelemista ja paljon muuta. Lisätietoja on linkissä.

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

Sivulla esitetty "WPF-fonttiprosessori" on kuitenkin XNA:lle, eikä sitä voi käyttää monogamen muodossa. Joten haluaisin siirtää tämän MonoGame.

Lataa WPF-fonttiprosessori

Avaa seuraavat sivustot:

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

Vieritä alas kahteen linkkiin ja lataa lajittelukoodin sisältävä projekti napsauttamalla yllä olevaa linkkiä. Alempi on vain DLL, joten sinun ei tarvitse ladata sitä.

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

Pura ladattu tiedosto, jotta voit noutaa sisällön.

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

WPF-fonttiprosessoriprojektin luominen

Haluaisin luoda WPF fontin prosessori DLL, joka toimii "Kaikki CPU", mutta jostain syystä, kun luon hankkeen kanssa "Content Pipeline Extension Library" ja XNA Framework, voin vain luoda sen x86, joten minä luoda sen säännöllisesti luokan kirjasto täällä.

クラス ライブラリの作成

Kun luot projektin, et tarvitse Class1.cs, joten poista se.

「Class1.cs」の削除

Lisää seuraavaksi viittaus.

参照の追加

Koska piirrät tekstiä WPF:ään, tarvitset WPF:ään liittyvän viittauksen. Tarkista ensin "PresentationCore" "Frameworkista".

「PresentationCore」にチェック

Tarkista seuraavaksi "WindowsBase". Vahvista ja avaa Referenssipäällikkö uudelleen painamalla OK-painiketta.

「WindowsBase」にチェック

Valitse vasemmalla Selaa ja napsauta alla olevaa Selaa-painiketta.

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

Avaa seuraava kansiopolku:

  • C: \\ Program Files (x86) \\ MSBuild \\ MonoGame \\ v3.0 \\ Tools \

Lisää sieltä seuraavat kaksi DLL-tiedostoa:

  • MonoGame.Framework.dll -tiedosto
  • MonoGame.Framework.Content.Pipeline.dll -tiedosto

2つの DLL を追加

Varmista, että se on valittuna, ja napsauta OK-painiketta.

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

Tarkista lisätyt viittaukset.

追加された参照を確認

Lisää lähdekoodi WpfFontPipeline-kansiosta projektista, jonka latasit parhaillaan muokkaamaasi projektiin.

ソースコードを追加

Osavaltio, jonka lisäsit.

追加した状態

Varmista, että koontiversion kokoonpano on "Release" ja "Any CPU".

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

Suorita koontiversio ja tarkista, onko se rakennettu onnistuneesti.

ビルド結果

DLL luodaan.

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

Peliprojektin luominen

Luo monopeliprojekti. Sillä ei ole väliä, mitä alusta se on.

MonoGame のプロジェクトを作成

Sijoita juuri luomasi DLL-tiedosto Sisältö-kansioon. Sillä ei ole väliä, missä DLL on, mutta siinä tapauksessa tarvitset suhteellisen tai absoluuttisen polun, joten jätän sen tänne nyt.

 DLL を Content フォルダに配置

Avaa Content.mgcb ja avaa Viittaukset, joiden sisältö on valittuna.

Jos kaksoisnapsautat "Content.mmcb" ollaksesi avaamatta sitä, käynnistä "MonoGame Pipeline" Käynnistä-valikosta.

References を開く

Kirjoita tekstiruutuun juuri luomasi DLL-tiedoston nimi tai Content.mgcb-tiedoston polku tai absoluuttinen polku.

Kun olet määrittänyt sen, DLL ei vieläkään vastaa, joten kun tallennat projektin, poistu monoGame Pipelinesta ja avaa se uudelleen.

DLL のファイル名を入力

Luo sprite-fontin. Valitse valikosta Muokkaa ,Lisää→Uusi kohde.

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

Valitse "SpriteFont Description" kohteiden joukosta lisätä sen. (Muuten, kun olet lisännyt SpriteFont, avasin SpriteFont tiedosto helpottaa nähdä suorituksen aikana ja muutti fontin nimi ja koko.)

「SpriteFont Description」を選択

Jos valitset lisäämäsi SpriteFont-fontin, huomaat, että WPF-fontin käsittelijä on käytettävissä suorittimessa.

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

Koska jokainen parametri voidaan asettaa, tällä kertaa yritin asettaa sen kuvan toistaiseksi. Valitettavasti et voi muuttaa väriä nykyisen version MonoGame Pipeline.

各パラメータ設定

Yritä rakentaa. 6860 merkkiä rakennettiin, koska se sisälsi jopa JIS tasolla 2. Silti aika on noin yhdeksän sekuntia, joten näet, että se on melko nopea.

ビルド完了

Nyt piirrämme käyttäen tätä SpriteFontia, ja koodi on täsmälleen sama kuin XNA. Voit piirtää tekstiä käyttämällä koodia, joka on esitetty kohdassa "Näytä aakkosnumeeriset merkit". Tietenkin myös japani on mahdollista.

Haluaisin laittaa vain koodin, että olen lisännyt kerran.

Kentän määritysosa. "SpriteFont" on lisätty.

GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;

SpriteFont font;

Ladataan ja luodaan kirjasintietoja LoadContent-menetelmällä.

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");
}

Piirustus japaniksi Piirrä-menetelmässä.

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);
}

Kun teksti suoritetaan, se piirretään. Sitä on vaikea ymmärtää, mutta kirjeissä on rajoja ja sinisiä asteikkoja.

Se tuli helppo piirtää japanin näin, ja se tuli mahdolliseksi piirtää merkin koristeluun.

テキストの描画結果

Lopuksi, et voi muuttaa väriä tekstin koristelu monoGame Pipeline, mutta voit avata tiedoston suoraan ja muokata sitä.

Kun olet tallentanut ja sulkenut projektin, avaa .mccb-tiedosto tekstitiedostona.

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

Jos vierität alaspäin, kohdeparametrissa on väritietoja, joten muokkaa sitä suoraan siellä.

色情報を直接編集

Kun olet tallentanut tekstin, avaa monoGame Pipeline uudelleen ja rakenna se. Näet, että väri on muuttunut, kun suoritat sen.

色変更したテキスト