問題タブ [sane]
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.
python - Python の ctypes を使用して、「struct_name *** param_name」として宣言されたパラメーターを渡したり読み取ったりしますか?
Python の ctypes ライブラリを使用して、スキャン ライブラリSANEのいくつかのメソッドにアクセスしようとしています。これは ctypes の私の最初の経験であり、1 年以上にわたって C データ型を扱わなければならなかったのは初めてなので、ここにはかなりの学習曲線がありますが、この特定の宣言がなくても、この特定の宣言は面倒だと思います:
まず、SANE_Status
(enum) とSANE_Bool
(typedef to c_int
) の処理に成功しました。どちらもシンプルでした。一方、その最初のパラメーターは、私にあらゆる種類の悲しみを引き起こしています. そもそも" " 表記に慣れていない***
ため、これまでのトレーサー弾はガベージ データしか生成しませんでした。Python 構造オブジェクトのリストを読み戻せるように、この関数への入力をフォーマットするにはどうすればよいですか? 参考までに、参照されている C 構造体は次のとおりです。
どこSANE_String_Const
で として定義されていc_char_p
ます。
このオブジェクトの私の Python/ctypes バージョンは次のとおりです。
これから期待される動作(構造オブジェクトのリスト)を取得できるように、何を渡す必要があるかについての提案はありますか?すべての回答に感謝します。
更新 1:
以下を使用して、正しい SANE_Device Python 構造を取得できました。
ただし、1) うーん、2) 結果が 1 つしかない場合にのみ機能するようです。devices.contents.contents
またはで len() を実行できませんdevices.contents.contents.contents
。結果の数を決定するにはどうすればよいですか? SANE のドキュメントでは、「関数が正常に実行された場合、*device_list 内の SANE_Device 構造へのポインタの NULL 終了配列へのポインタを格納する」と指定されています。提案?
更新 2:
10 項目の配列を渡し、次を使用して最初の要素にアクセスできました。
ただし、10 は明らかに恣意的な数であり、実際の結果の数を決定する方法はありません。devices.contents.contents.contents[1].name
デバイスが 1 つしか接続されていないときにアクセスしようとすると、セグメンテーション フォールトが発生します。ctypes では、このような可変長構造を処理する適切な方法が必要です。
asp.net-mvc - MVC モデルに IOC を事前設定 - キャッシングの代わりに?
ASP.NET MVC サイト用の単純な CMS 実装の戦略を検討しています。単純な部分は、さまざまな部分ビューで使用される値を抽象化したということです。これらはすべて、同一の CSS レイアウトを共有するユーザー コントロールです。そのため、CRUD を使用してときどき変更できるデータベースから、同じ部分ビューにカスタム値を入力しています。
それほど単純ではない部分は、標準の UI 要素を SQL テーブルの行として合理的に効率的かつ論理的に抽象化したものです。でもそれは置いといて…
一部のスーパーモデルを使用して、部分ビュー用に事前構成されたモデルを各ページに渡すことはわかっています。しかし、それらが事前に構成され、事前にロードされている場合、呼び出されるまでどこに置くのでしょうか?
私がこのように行くのは少し気が狂っていると思わせる部分は、本質的に静的データであるもののロード時間です。繰り返しになりますが、SharePoint です。
では、(私が思うに) application_start にすべてロードしてみませんか? なぜだめですか?私が答える!次に、IoC を使用して、Google が適切な情報へのリンクを 1 つも返すことはありません。
では、リポジトリ呼び出しをコンストラクターに入れる以外に、IoC コンテナーを使用してデータベースからモデルを作成するためのより良いアイデアがある人はいますか?
そして、コントローラーがアクセスできる IoC コンテナーにこれらの静的データ モデルを配置するのはばかげていると思う人はいますか?
ありがとう、
S.町野
c - より小さな型を格納するために変数のアドレスを操作しますか?
これは、高級プログラミング言語で自分を甘やかすために得たものです。
32 ビット値をバッファーに書き込み、uint64_t
スタックに書き込む関数があります。次のコードはそれを保存する適切な方法ですか?
これが標準的で安全なスタイルになると思います:
python - Python文字列から16ビットTIFF画像を作成します
16ビット深度とカラーモードでスキャナーを使用する必要があるため、Python文字列の画像をスキャナー(epson v500)から受信するようにpython-imaging-sane(16ビット深度のRGB tiffをサポートしていません)を変更しました。
これは、スキャナーからPython文字列にデータを送信するために使用する変更された関数です。
私はこのPythonスクリプトを使用して、データを受信して使用します。
スクリプトは8ビット深度で非常にうまく機能しますが、深度を16ビットに設定すると、間違った色の画像が得られます。
これらは2つの例です。
問題はどこだ?
編集:graphicsmagickのPythonラッパーであるpgmagickを使用します。graphicsmagickは、量子深度を16ビットに設定してコンパイルされます。
windows - WindowsプラットフォームでSANEバックエンドを使用することは可能ですか?
Canon 9000Fのスキャンアプリケーションを開発する必要がありますが、WIAとTWAINに問題があります。SANEプロジェクトのホームページで、この特定のスキャナーが彼らのテクノロジーで非常にうまく機能することを読んだので、WindowsプラットフォームでSANEバックエンドを使用できるかどうか興味があります。
私はこのウェブサイトでいくつかの情報を見つけました:http ://www.zago.net/sane/windows/sane_on_windows.html
Windows上のSANE:ポートは2003年9月23日にCVSツリーに統合されました。SANEリリース1.0.13で利用可能になります。
Windowsは、SANEのウィキペディアページにもプラットフォームとしてリストされています。
オペレーティングシステム:Microsoft Windows、Linux、UNIX、OS / 2
python - PIL SANE インターフェイス: どこにありますか?
どうやら PIL には SANE (Scanner Access Now Easy) インターフェイスが含まれているようです。
sane は PIL によって提供されます。
OS X と Windows の両方に PIL をインストールしましたが、"import sane" が機能しません。インストールする必要がある追加のものがあるかどうかを確認するためにかなりのグーグル検索を行いましたが、何も見つかりません。
PIL の SANE インターフェイスを取得するにはどうすればよいですか?
私は任意の SANE インターフェイスに満足しています (PIL である必要はありません)。
command-line - フロントエンドからコマンドライン引数を取得する
xsane から scanimage に送信されている正確なコマンド ライン引数を確認しようとしています。ltrace を試しましたが、ログのどこにも「scanimage」が見つかりませんでした。一般に、ある GUI プログラムがコマンド ライン プロのフロントエンドであることを知っているとします。
linux - Linux で、SANE の scanimage が出力する TIFF をパイプ文字で JPEG に変換するにはどうすればよいですか?
私の好みのプログラム nconvert は Raspberry pi の ARM CPU では動作しないため、Imagemagick の convert プログラムを使用することを考えていました。