問題タブ [pango]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cairo - librsvg で Pango がフォントを見つけられない
librsvg を使用して SVG ファイルを Cairo コンテキストにレンダリングしています。その後、Pango を使用して上部にテキストを「手動で」レンダリングします。
SVG をレンダリングすると、フォントを読み込めないという Pango の警告が表示されます。
"couldn't load font "'Calibri' Not-Rotated 16", falling back to "Sans Not-Rotated 16", expect ugly output."
その後、Pango を介して手動でテキストをレンダリングすると、問題なく動作します。複数の異なるフォント ファミリを試してみましたが、それらはすべて警告なしで問題なくレンダリングされます。
librsvg のソースをざっと見て、Pango がどのように使用されているかを確認しましたが、私が行っていることと大きな違いは見られませんでした。
この問題のデバッグを続行する方法がわかりません。Pango が Windows でフォントを見つける方法と、それらを見つける能力に影響を与える可能性があるものについてアドバイスをいただければ幸いです。
それが重要な場合:
ここから必要なすべてのバイナリをダウンロードしました: http://sourceforge.net/projects/ezwinports/files/
gtk - GtkWindow と GdkWindow の違いは?
Gtk-Gdk-Cairo-Pango アプリの冒頭で、ウィンドウを作成します。
まず、 がありますが、ではGtkWindow
なくをgtk_create_window
返します。なぜですか?GtkWidget
GtkWindow
次に、gdk_window_process_updates(..)
requireなどのいくつかの関数GdkWindow*
。
gtk_window_set_geometry_hints()
一方、 が必要GtkWindow*
です。
ドキュメントには、 return もありGdkWindow* gdk_window_new()
ますGdkWindow
。
確かに次のようなドキュメントがあります:
GdkWindow は、画面上の長方形の領域です。これは、GTK+ レベルで GtkWidget や GtkWindow などの高レベル オブジェクトを実装するために使用される低レベル オブジェクトです。GtkWindow はトップレベル ウィンドウであり、ユーザーはタイトルバーなどを備えた「ウィンドウ」と考えるかもしれません。GtkWindow には多くの GdkWindow が含まれる場合があります。
しかし、いつ、なぜGtkまたはGdkウィンドウを作成する必要があるのか 、まだ教えてくれませんか? ここで従うべきパターンは何ですか?
さて、私が解決しようとしている特定の問題は何ですか?確かに、マウスが動いた直後に、gtk+gdk の上に cairo+pango を使用してテキストを描画しようとします。問題は、実際の描画は高速に実行されているように見えますが、マウスの動きとまったく同じように描画できないことです。私motion_notify_event
はちょうど呼び出しますgtk_widget_queue_draw(GtkWidget)
が、実際のマウスが画面上を移動するのには明らかな遅れがあります.1つの文字を描画しても、移動フェーズ中にマウスポインターと整列せず、マウスが停止した後にのみキャッチされます.
私が試したのは、 を呼び出して更新を高速化することです。gdk_window_process_updates(GDK_WINDOW(window), false);
コンパイラはそれを食べますが、ランタイム アサーション: を取得しましたGdk-CRITICAL **: gdk_window_process_updates: assertion 'GDK_IS_WINDOW (window)' failed
。このマクロと、いつどのように使用するかについての情報が見つかりません。
gtk - Pango を使用して Clutter.Text で行の高さを設定する方法
Gtk.Pangoを使用して、二重行間隔でテキストを表示するClutter.Text が必要です。
注 : CSS では、使用する
line-height: 200%
と思います。
このコードを試しましたが、うまくいきませんでした:
どうやら、Pango.LayoutClutter.Text
のキャッシュされたバージョンを保持します。
これを達成する方法はありますか?
freetype - Linux での「hb_ft_font_create」への未定義の参照
pango をコンパイルすると、次のエラーが発生します。
freetype と harfbuzz をコンパイルしました。-lfreetype
また、変数-lharfbuzz
に渡します。LIBS
utf-8 - Pango select multiples フォント
pango を使用してソフトウェアで使用したいフォントが 3 つあります。
- Font1: ラテン文字、クリリック文字
- Font2: ハングル文字
- Font3: 日本語の文字
Pango はテキストを正しくレンダリングしますが、フォントを選択したい
この好みの pango フォントを示す方法はありますか?
私が使用するもの: Linux と pango 1.29