問題タブ [tgifimage]
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.
c++builder - 別のフォームが機能している場合でも、1 つのフォームを更新し続ける
作業中に他のフォームの上に置きたい小さなフォームを作成しました。基本的には、「読み込み中...お待ちください」という小さな通知のようなものです。アニメーション化されたTGIFImageが含まれています。問題は、別のフォームが一生懸命働いているときに、このフォームのアニメーションと更新が途切れることです。おそらく、それらは同じスレッドで実行されているためですか?この小さなフォームを常に適切に更新するための迅速かつ簡単な方法はありますか? おそらく、それが独自のスレッドで処理されていることを確認する簡単な方法でしょうか?
delphi - 一部の GIF ビューアでの Delphi TGIFImage アニメーションの問題
Delphi 2009 を使用して作成されたアニメーション GIF が、一部のGIF ビューアTGIFImage
で正しく再生されないことがあることを発見しました。問題は、アニメーションが時期尚早に再開されることです。
次の例を検討してください。
(これは、問題を示す最も単純な例です。)
出力はかなり大きなアニメーション GIF です。Internet Explorer 11 では、15 秒の「ムービー」全体が適切に再生されますが、Google Chrome では、「ムービー」はわずか 4 秒ほどで途中で再開されます。
どうしてこれなの?
- 出力された GIF ファイルに何か問題がありますか?
- もしそうなら、上記の私のコードに何か問題がありますか、それとも問題があり
GIFImg
ますか? - そうでない場合、ビューアの問題の性質は何ですか? 利用可能な視聴者のうち、この問題を抱えている割合は? GIF の作成中にこの問題を「回避」する方法はありますか?
SO ユーザーの利益のために、上記のコードは最小限の作業例です。もちろん、この問題を発見したとき、私はこれらのサイケデリックなパターンを作成していませんでした。代わりに、私は Lorenz システム シミュレーターに取り組んでいて、IE では再生されますが Chrome では再生されない次の GIF アニメーションを作成しました。
Internet Explorer 11 では、アニメーションが再開される前にモデルが 360 度回転します。Google Chrome では、わずか 20 度でアニメーションが途中で再開されます。
- ローレンツ画像はInternet Explorer 11.0.9600.17239、GIMP 2.8.0、Opera 12.16 で動作します
- ローレンツ画像は、Google Chrome 36.0.1985.143 m、Firefox 26.0、27.0.1、31.0 では動作しません。
GIMP で「問題のある」GIF を開き、GIMP にアニメーション GIF として (再) 保存させると、結果はすべてのビューアで機能します。以下は、ローレンツ アニメーションの GIMP バージョンです。
16 進エディターを使用して 2 つのファイルを比較し、ウィキペディアの記事を参照として使用すると、たとえば、'NETSCAPE' 文字列が元の (GIMP されていない) バージョンの間違った場所にあるように見えます。width
GIF 画像のandを設定してもheight
、Logical Screen Descriptor に対応する値が存在しないのは少し奇妙です。
delphi - TGifimage のサイズ変更
TGifimage
次の手順でアニメーションのサイズを変更しようとしています。問題なくサイズ変更できますが、アニメーション gif の品質は非常に悪いです。
品質を向上させる方法はありますか?
現在、アニメーション GIF は黒くなり、破損しているように見えます。
delphi - アニメーション GIF を含む TGIFImage - イベントが機能しない - アニメーションの進行状況を検出する方法
Delphi には次のイベントTGIFImage
があります: OnPaint
、、、。ただし、アニメーション GIF の表示中にこのイベントが呼び出されることはありません。OnAfterPaint
OnLoop
OnEndPaint
次のコードを使用して、アニメーション GIF を表示します。
アニメーションの再生中に現在表示されているフレーム インデックスを抽出する方法は?
アニメーションがいつ終了したかを検出する方法は?
次のフレームがいつ表示されるかを検出する方法は?
OnProgress
イベントは、最後のアニメーション フレームが描画された後、最初のアニメーション ループ中にのみ呼び出されます。TGIFImage は最初のフレームからアニメーションを続行しますが、このイベントは機能しなくなります。
Delphi 10.2 Tokyo を使用しています。