C# での空白のフォームへの中国語入力
キーワード: PS 風のテキスト ツール、中国語入力の繰り返し
最近、PS 風のテキスト ツールを作成するために研究しています。 N 件の情報を収集し、N 人に質問した結果、ようやく結論を出しました。
で入力方法を開きます。空白のフォームと C# を使用します。その中の空白のウィンドウは、this.ImeMode= ImeMode.NoControl が設定されていても、入力メソッドを開くことができないことを意味します。Microsoft 開発フォーラムに行きました。モデレータの Zhou Xuefeng と Riquel_Dong に感謝します。私は API 関数 ImmAssociateContext(IntPtr hWnd, IntPtr hIMC) を使用しました。指定されたウィンドウ
{
ImmAssociateContext(this.Handle, m_hImc ; さて。
IMM 関数を使用できます: ImmGetCompositionString( IntPtr hIMC, int dwIndex, StringBuilder lpBuf, int dwBufLen); もちろん、入力フォームに入力された中国語の文字または NUICODE タイプの文字を取得します。ここでは他に何も勉強しません。漢字の問題だけです。
単語を取得するコードは次のとおりです:
case WM_IME_CHAR:
size += sizeof( Char);
m_hImc、GCS_RESULTSTR、str、サイズ);
休憩; サービス「おやおや、何が問題ですか?」
MSDN を確認したところ、WM_IME_CHAR について次の説明がありました:
WM_IME_CHAR メッセージ全角文字が含まれており、アプリケーションはこのメッセージを DefWindowProc に渡します
これは問題ですか? メッセージを 2 回送信するという問題です。
解決策: 判定を追加します
if (m.WParam.ToInt32() == PM_REMOVE)
{
}
テスト。最後に、コードポストに問題はありません
System.ComponentModel を使用します。
System .Drawingの使用;
System.Dataの使用;
System.Textの使用;
パブリック部分クラス UserControl1 : UserControl
{
IntPtr m_hImc;
bool isShowChina = false;
public const int WM_IME_SETCONTEXT = 0x0281;
private const int WM_IME_CHAR = 0x0286;
private const int WM_CHAR = 0x0102;
private const int WM_IME_COMPOSITION = 0x010F;
private const int GCS_COMPSTR = 0x0008;
[DllImport(" Imm32.dll")]
public static extern IntPtr ImmGetContext(IntPtr hWnd);
[DllImport("Imm32.dll")]
public static extern IntPtr ImmAssociateContext(IntPtr hWnd, IntPtr hIMC);
[DllImport ("imm32.dll")]
static extern int ImmGetCompositionString( IntPtr hIMC, int dwIndex, StringBuilder lpBuf, int dwBufLen);
private int GCS_RESULTSTR = 0x0800;
private const int HC_ACTION = 0;
private const int PM_REMOVE = 0x0001 ;
StringBuilder sb = new StringBuilder();
Font font = new Font("宋体", 14, FontStyle. Regular);
public UserControl1()
{
InitializeComponent();
}
private void UserControl1_Load(object sender, EventArgs e)
{
m_hImc = ImmGetContext(this.Handle);
}
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
if (m.Msg == WM_IME_SETCONTEXT && m.WParam.ToInt32() == 1)
{
ImmAssociateContext(this.Handle, m_hImc) ;
}
switch (m.Msg)
{
case WM_CHAR:
KeyEventArgs e = new KeyEventArgs(((Keys)((int)((long)m.WParam)) | ModifierKeys);
char a = (char)e.KeyData; //和文
sb.Append(a);
intoText();
isShowChina = false;
break;
case WM_IME_CHAR:
if (m.WParam.ToInt32() == PM_REMOVE ) //如果不做这个判断.会打印出重复的中文
StringBuilder str = new StringBuilder();
int size = ImmGetCompositionString(m_hImc, GCS_COMPSTR, null, 0);
size += sizeof (Char);
ImmGetCompositionString(m_hImc, GCS_RESULTSTR, str, size);
sb.Append(str.ToString());
MessageBox.Show(str.ToString());
intoText();
C Isshowchina = TRUE; } //// & gt; //// & lt;/概要 & gt; Private void intotext () // { graphics g = this.creategraphics (); g.Drawstring (sb.tostring (), font, Brushs.black, 10, 10); }}C# で空白のフォームにさらに中国語を入力するには、PS のようなテキスト ツールを実装できます。 関連記事については、PHP 中国語 Web サイトに注目してください。

Adobe Photoshopには3つのパッケージがあります。1)20GBのクラウドストレージを含む低コストのPhotoshopのみを必要とするユーザーに適した単一のアプリケーションプラン。 2)CreativeCloudプランの完全なセット。複数のAdobeアプリケーションを必要とするユーザーに適しており、100GBのクラウドストレージを含む高コスト。 3)20GBのクラウドストレージを含む低コストで、予算が限られているアカデミックユーザーに適した、学生と教師向けの優先計画。

Photoshop'sprimaryfunctionistoenableUserstomantumentonipulation and beciTialimages with recisionandcontrol.itsspecialfeatureSinclude:1)Alayer Beasingeditings SystemFor IndoendentElementManipulation、2)AnextensiveLibraryoftOoofSOULSANDFILTERSFORIUSTASKS、AN

Photoshopのコストには、直接コスト、時間と学習曲線、リソース、ハードウェアへの投資が含まれます。 1。直接費用:サブスクリプションシステムは月額20ドルから50ドル、一度に数百ドルを購入します。 2。時間と学習:多くの時間と練習が必要であり、オンラインコースとチュートリアルを通じて学習することをお勧めします。 3。リソースとハードウェア:効率を改善するためにハードウェア構成を確保するには、高性能コンピューターと十分なストレージスペースが必要です。

Photoshopのコア機能には、レイヤー、選択ツール、調整ツールが含まれます。 1.レイヤーは、画像パーツの独立した編集を可能にし、レイヤースタイルをサポートします。 2。ラッソ、マジックワンド、クイック選択ツールなどの選択ツールは、正確な編集を提供します。 3.色のレベル、曲線、色相/飽和などの調整ツールは、画像を非破壊的に調整できます。

Photoshopでは、レイヤーマスクの役割は、非破壊的な方法で隠されたレイヤーまたは表示された部分を許可することです。 1.レイヤーマスクの作業原理は、黒、白、グレースケールを介してレイヤーの可視性を制御することです。 2。基本的な使用法には、キャラクターイメージを新しい背景に合成するなど、画像合成が含まれます。 3.グラデーションマスクを使用してスムーズな画像遷移を実現することにより、高度な使用を実現できます。

Photoshopの強力な機能には、スマートオブジェクトとニューラルフィルターが含まれますが、Gimp、Krita、Photopeaなどの無料の代替品は、Gimpの層機能、Kritaのデジタル絵画、Photopeaのオンライン編集などの特定の分野でうまく機能します。

Photoshopの色調整は、調整層を通じて実現して、画像をよりプロフェッショナルにすることができます。 1.色のレベル、曲線、色相/飽和、その他のツールを使用して、色相、飽和、明るさを調整します。 2。LUTを適用して、独自の色効果を作成します。 3.調整層を使用して画像の歪みを回避し、履歴パネルを使用して調整手順を追跡します。

現実の世界でのPhotoshopのアプリケーションには、芸術的創造、科学研究、商業マーケティングが含まれます。 1)芸術的な創造では、デジタルペインティングとイラストに使用されます。 2)科学研究では、画像処理とデータの視覚化に使用されます。 3)商業マーケティングでは、広告デザインとブランドイメージの形成に使用されます。このソフトウェアの汎用性により、さまざまな分野で広く使用されています。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Dreamweaver Mac版
ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

WebStorm Mac版
便利なJavaScript開発ツール
