問題タブ [twaindotnet]
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# - トウェインスキャンパープルエッジの削除
私はTwainDotNetを使用して比較的単純な画像をスキャンし、最終的にはEmguCVを使用してエッジを見つけています。これが私がスキャンしたもののスクリーンショットです:
ただし、画像検出でしきい値を調整すると、まったく同じエッジが検出されますが、正しい位置ではありません(幅が広すぎます。スキャンしたものは灰色です)。このように黒い画像をスキャンすると、期待どおりのエッジが検出されます。
どちらの場合も、紫色のエッジが表示されます(実際のオブジェクトにはありません)。
私の感じでは、この紫色のエッジは、紫色の場所と一致するため、最初のエッジ検出で間違った処理を実行しますが、黒のエッジは、黒の場所と一致します(黒の強度が紫色よりも高いため)しかし、灰色の強度はそうではありません)。emguでしきい値を調整しても違いがない理由を説明できると思います。
だから、私の質問は-この紫色を取り除くために設定できる2つの設定がありますか、それともスキャナーの機能ですか(ハードウェアを指すFlickrに関するこの興味深い議論を見つけましたが、3つの異なるスキャナーで試しました( 2つの同じモデル、1つは完全に異なる)そしてそれらはすべて同じことをしますか?
画像のスキャンに使用しているコードは次のとおりです。
c# - TwainDotNET 使用時にプリズムと非プリズム 64 ビット アプリの違いを検出する方法
Windows 2008 ターミナル サーバー (64 ビット) で実行されている内部アプリにhttps://code.google.com/p/twaindotnet/を使用しようとしています。このライブラリは 64 ビット マシンではネイティブに使用できず、このライブラリ (およびそれを使用するすべてのアプリ) は x86 プラットフォームを対象としてコンパイルする必要があるという事実について、いくつかのコメントを見つけました。(私はVS2010を使用しています)ただし、問題は次のとおりです。
- サンプル アプリケーション - TestAppWpf (TwainDotNET パッケージから) - (サーバー上で 64 ビット モードで実行されている) 任意の CPU をターゲットとしてコンパイルすると、(当社の) サーバー上で正常に動作します。
- Unity/MEF で Prism を使用する私の (最も単純なサンプルでも) アプリケーションは、「不正な形式のプログラムをロードしようとしました (HRESULT からの例外: 0x8007000B)」という例外で常にクラッシュします。
[使用されるコードは常に同じです:
キャッチ部分は現時点では愚かな「ダンプ」です...そして、twain_32.dll(DsmParent関数)ライブラリへの呼び出しが行われようとしている最初の場所で例外が発生します
]
- また、プロジェクトとライブラリ全体を再コンパイルして x86 をターゲットにしようとしましたが、それでも同様の結果が得られます - TestAppWpf は動作しますが、アプリは動作しません。
- 私の開発マシン (32 ビット) では、すべてが魅力的に機能することは言うまでもありません。
サンプル アプリと自分のアプリケーション (どちらも 64 ビット環境で実行されています) の違いを見つけようとして完全に失われました。
任意の提案/ヒント/またはトリックをいただければ幸いです。
マーティン・F.
c# - 仮想スキャナー (TWAIN) が C# (WPF) で機能しない
TWAINdotNet ライブラリについてです。C#/WPF/VS2010 で基本的な仮想スキャナーの実験を行うために、過去 24 時間を費やしました。http://sourceforge.net/projects/twain-samples/files/から仮想スキャナ ドライバをダウンロードしてインストールしましたが、使用可能な TWAIN データ ソースのリストに問題なく表示されます。興味深いことに、このページで入手できるサンプル アプリケーションは、このドライバーでも問題なく動作します。この問題は、C#/WPF で使用しようとした場合にのみ発生します。
具体的には、DsUserInterface
使用して呼び出しを行うMessage.EnableDS
と、神が知っている理由で失敗します。UIを表示するかどうかに関係なく、すべての場合に失敗します。同様にDsImageLayout
、スキャン領域を設定しようとすると、呼び出しも失敗します。最後になりましたが、測定単位をインチ (または何でも) に設定しようとしても効果がありません。呼び出しは失敗しませんが、以前の値はそのまま残ります。
私が何か間違ったことをしている可能性がある場合のコードは次のとおりです。
twain - Setting default TWAIN data source without using API UI menu
Using the twaindotnet
library in C#, I'm wondering if there's a way to set the default datasource using the library.
As a feeble attempt, I've tried adding a SetDefault
method to the DataSource
class of twaindonet
, like this
which is called from the DataSourceManage
class like this
But when I try to use SetDefault
, Twain32Native.DsmIdentity
always results in Failure
being returned.
I basically copied from SetDefault
the setDefaultDataSource
method from TWAIN sample Data Source and Application
Any help would be greatly appreciated.
vb.net - twain ocr 関数が空のバイトを返す
私は以下のコードを持っています:
私が直面している問題はsbytes
、バッファ内のインデックスが正しく、パスと dll が適切に実装されているにもかかわらず、バイト配列が常に空に設定されていることですが、バイト配列への変換は成功していません。例外は発生しますが、バイトの長さは 0 です
どうすればこれを修正できますか?
vb.net - TWAINDotNet を使用したスキャナーの dpi の設定: dpi >1200 の設定に失敗する
TWAINDotNet API を使用して Epson スキャナーを制御しようとしています。ほとんどすべてが機能していますが、dpi を適切に設定できません。
API を 300、600、または 1199 dpi に設定すると、スキャナは期待どおりに動作します。残念ながら、dpi を 1200 以上に設定しようとすると、「TwainDotNet.TwainNative.ConditionCode.CapabilitySequenceError」を示す TWAINException が発生します。スキャナーは確かに 1200pi に対応しています (さらに高い dpi 値も)。
私はVB.Net 2010からTWAINDotNetを使用しています
コメントをお待ちしております。
area - TwainDotNet 特定領域スキャン
私のアプリケーションでは、TwainDotNet ライブラリを使用しており、フラットベッドから特定の領域をスキャンしています。
しかし、その結果、スキャンが開始され、スキャン ソースが Twain ドライバーの場合、ページ全体がスキャンされますが、WIA ドライバーを選択すると、特定の領域が選択されます。主なアイデアは、アプリが最初にページ全体をスキャンし、次にページの特定の高さのみをスキャンすることです。