問題タブ [bitmap]
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# - GZipStreamとDeflateStreamはすべてのバイトを解凍しません
.netで画像を圧縮する方法が必要だったので、.net GZipStreamクラス(またはDeflateStream)の使用を検討しました。ただし、解凍が常に成功するとは限らないことがわかりました。画像が正常に解凍される場合もあれば、何かが破損しているというGDI+エラーが発生する場合もあります。
問題を調査した後、解凍によって圧縮されたすべてのバイトが返されなかったことがわかりました。したがって、2257974バイトを圧縮すると、2257870バイト(実数)しか返されないことがあります。
最も面白いのは、時々それがうまくいくということです。そこで、10バイトだけを圧縮するこの小さなテストメソッドを作成しましたが、今は何も返されません。
圧縮クラスGZipStreamとDeflateStreamの両方で試してみましたが、コードでエラーの可能性を再確認しました。ストリームを0に配置し、すべてのストリームをフラッシュしようとしましたが、うまくいきませんでした。
これが私のコードです:
opengl - ビットマップをポリゴンに変換 - (逆ラスタライズ)
単色のしみがいくつかあるビットマップ画像が与えられた場合、しみと同じ形状のポリゴンを構築するには、どのアルゴリズムを使用しますか?
これは、複数のステップで実行できます。高解像度のポリゴンは、後で最適適合アルゴリズムによって切り取ることができます。結果のポリゴンを凸面コンポーネントにカットして OpenGL で問題なくレンダリングできるようにする方法を教えていただければボーナス ポイントです。
image - 画像 DPI の説明
DPI の定義を書こうとすると、次のことがわかりました。
DPI (ドット)、PPI (ポイント)、LPI (線) はすべて、以降 DPI と呼ばれる同じ概念を指します。
DPI はデバイスに依存する測定値です。「これがこのデバイスの解像度です」と表示されます。
ベクターベースのファイルは、1 つの DPI に関連付けられていません (特定の解像度に準拠するように拡張および縮小します)。
そのベクターベースのファイルが「ビットマップ」ベースの形式(bmp、png、tiff、jpg)などにレンダリングされると、「バンディング」またはその特定の DPI で出力する「スキャンライン」ベースのデバイス。
現在、「ビットマップ」ベースのファイルには DPI が存在しないと主張する人もいます。
DPI の定義を探していますが、ビットマップ イメージに存在しないと見なされる方法または理由を教えてください。
.net - コンパクト フレームワーク - Image.FromStream (ストリーム、ブール値、ブール値) の実装はありますか?
私が作成した .NET CF アプリケーションの機能の 1 つは、リモート カメラからフレームを取得することです。フレームは単一の jpeg 画像として取得され、利用可能な場合は画面に表示されます。
それは十分な解決策でしたが、コンストラクターを使用してストリームをImage
オブジェクトに変換するのに必要な時間が、ストリームをダウンロードするのに必要な時間よりもはるかに長いという事実は好きではありません。Bitmap()
この問題について検索するためにいくつかのブログを閲覧したところ、一部の開発者が、いくつかの検証コードを制御しているように見えるフラグImage.FromStream()
を持つメソッドを使用していることがわかりました。が false の場合、変換は劇的に高速になりますvalidateImageData
。validateImageData
なるほど…と思いましたが、Compact Framework はこのメソッドを実装していません!
それを回避する方法、または少なくともImage
不要な遅延なしでストリームをに変換する方法を知っている人はいますか?
compact-framework - CF.NETで大きなビットマップを作成するときのOutOfMemoryException
私のコンパクトフレームワークアプリケーションは、すべてのアイテムを大きなビットマップサーフェスにレンダリングし、そのビットマップを画面上のオフセット位置にコピーして、適切なアイテムのみが表示されるようにすることで、スムーズなスクロールリストを作成します。古いバージョンでは、その時点で画面に表示されるはずのアイテムしかレンダリングされませんでしたが、このアプローチは、スムーズなスクロールインターフェイスには遅すぎました。
大きなビットマップを最初に作成するときに、OutOfMemoryExceptionが生成されることがあります。ユーザーがデバイスのソフトリセットを実行してアプリケーションを再実行すると、問題なく作成を実行できます。
アプリケーションは新しいスムーズスクロールメソッドの前とほぼ同じ量のプログラムメモリを使用するため、このビットマップがプログラムメモリで生成されているようには見えません。
この例外を防ぐ方法はありますか?例外がスローされる前に(どこにいても)必要なメモリを解放する方法はありますか?
gdi+ - GetHBITMAP メソッドの使用方法
gdi+ ビットマップがあり、ビットマップを HBitmap に変換したいと考えています。次のコードを書きます。
しかし、うまくいきません。どうすれば HBitmap を取得できますか?
web-applications - VBscript でグラフを描画する
部分的に HTML、部分的に VBscript の HTML アプリケーションをフォームに偽装しています。それが行うことは、いくつかのローカル ファイルを開き、GAWK を含む DOS ボックスを実行し、その結果としてテキスト ファイルを表示することです。たとえば、.BMP ファイルとして、積み上げ棒グラフの結果を含むビットマップ イメージを作成できるようにすることで、それを拡張したいと考えています。しかし、私は困惑しています。どこから始めればいいのか、まったくわかりません。
c++ - アルファチャンネル情報を保持して、HBITMAP から Gdiplus::Bitmap を作成する方法は?
Bitmap::FromHBITMAP 関数を使用して新しい Gdiplus::Bitmap を作成すると、結果の Bitmap は不透明になります。元の HBITMAP の部分的な透明度は保持されません。
アルファ チャネル データをもたらす HBITMAP から Gdiplus::Bitmap を作成する方法はありますか?
c++ - VB6 から C++ DLL のビットマップ リソースにアクセスする
Visual Studio によって作成されたビットマップ リソースを含む C++ DLL があります。
LoadLibrary を使用して VB6 で DLL をロードできますが、LoadImage または LoadBitmap を使用しても画像リソースをロードできません。GetLastError() を使用してエラーを取得しようとすると、エラーは返されません。
同じ DLL を持つ別の C++ プログラムで LoadImage と LoadBitmap を使用しようとしましたが、問題なく動作します。
VB6 を使用して C++ DLL のリソース ビットマップにアクセスする他の方法はありますか?
c++ - hdcの内容をビットマップにコピーする
HDCのコンテンツをビットマップにコピーするにはどうすればよいですか?