プログラミング

プロおよび熱狂的プログラマーのためのQ&A

14
HTML5 Canvas Resize(Downscale)Image High Quality?
私はhtml5キャンバス要素を使用して、ブラウザーで画像のサイズを変更します。品質が非常に低いことが判明しました。私はこれを見つけました:<canvas>のスケーリング時に補間を無効にしますが、品質の向上には役立ちません。 以下は、CSSとJSのコードと、Photoshopで呼び出され、キャンバスAPIで拡大縮小された画像です。 ブラウザで画像を拡大縮小するときに最適な品質を得るにはどうすればよいですか? 注:大きな画像を小さな画像に縮小し、キャンバスの色を変更して、結果をキャンバスからサーバーに送信します。 CSS: canvas, img { image-rendering: optimizeQuality; image-rendering: -moz-crisp-edges; image-rendering: -webkit-optimize-contrast; image-rendering: optimize-contrast; -ms-interpolation-mode: nearest-neighbor; } JS: var $img = $('<img>'); var $originalCanvas = $('<canvas>'); $img.load(function() { var originalContext = $originalCanvas[0].getContext('2d'); originalContext.imageSmoothingEnabled = false; originalContext.webkitImageSmoothingEnabled = false; originalContext.mozImageSmoothingEnabled = false; originalContext.drawImage(this, 0, 0, 379, 500); }); photoshopでサイズ変更された画像: …

15
いつ/なぜSQL Serverでカスケードを使用するのですか?
SQL Serverで外部キーを設定する場合、どのような状況で削除または更新時にカスケードする必要がありますか?その背後にある理由は何ですか? これはおそらく他のデータベースにも当てはまります。 私は、各シナリオの具体的な例として、できればそれらをうまく使用した人からの検索をしています。


6
Android:アクティビティのライフサイクル中にonCreateOptionsMenuが呼び出されるのはいつですか?
いくつかのブレークポイントonCreate(メソッドの最初と最後に1つ)を挿入し、の最初にも1つ挿入しonCreateOptionsMenuます。onCreateメソッドが最初に呼び出され、それが終了する前にはonCreateOptionsMenu呼ばれています。 Fragmentアプリでナビゲーションコードを分離しようとしているのでonCreateOptionsMenu、アプリが携帯電話/タブレットで実行されているかどうかに応じて委任するオブジェクトがいくつかあります(これを決定するために画面サイズを使用しており、大きな画面には、レイアウトが膨らんだ後にチェックするビューがあります)。私が抱えている問題は、これらのオブジェクトをonCreateで作成し、でオブジェクトを参照するとnullポインター例外が発生することonCreateOptionsMenuです。

14
ライブラリ(DLL)の「app.config」に相当
app.configライブラリ(DLL)に相当するものはありますか?そうでない場合、ライブラリに固有の構成設定を保存する最も簡単な方法は何ですか?ライブラリは別のアプリケーションで使用される可能性があることを考慮してください。
149 c#  .net  dll  settings  app-config 

3
クリック可能なImageViewとImageButtonの違い
間の有意な差がある場合、私は思ったんだけどImageViewクリック可能に設定していますと比べて、ImageButton? どちらか一方を使用する理由はありますか?唯一の可能なオプションとしてImageButton残すのドローアブルに制限はありImageViewますか? 私はクリッカブルを選ぶ場合、私はおそらく、ボタンのいずれかの機能を失うことになるImageViewオーバーImageButton?

5
ロックされていないミューテックスのロックはどの程度効率的ですか?ミューテックスのコストはいくらですか?
低レベル言語(C、C ++など):ミューテックスの束(pthreadが提供するものやネイティブシステムライブラリが提供するものなど)とオブジェクトの単一のミューテックスのどちらを使用するかを選択できます。 ミューテックスをロックすることはどのくらい効率的ですか?つまり、アセンブラー命令はいくつありますか。また、それらにかかる時間(ミューテックスがロック解除されている場合)はどれくらいかかりますか? mutexの費用はいくらですか?ミューテックスを本当にたくさん持つのは問題ですか?または、私がint変数を持っているのと同じくらい多くのミューテックス変数をコードにスローすることはできますか? (ハードウェアの違いはどれくらいかわかりません。ある場合は、それについても知りたいのですが、ほとんどの場合、共通のハードウェアに興味があります。) 重要なのは、オブジェクト全体に対して単一のミューテックスではなく、オブジェクトの一部のみをカバーする多くのミューテックスを使用することで、多くのブロックを安全にできることです。そして、これについてどこまで行けばいいのかと思っています。つまり、どれほど複雑で、これが何個のミューテックスを意味するかに関係なく、可能なブロックを可能な限り安全に保護する必要がありますか? ロックに関するWebKitsブログ投稿(2016)は、この質問に非常に関連しており、スピンロック、アダプティブロック、futexなどの違いについて説明しています。

2
`void_t`の仕組み
私はウォルターブラウンがCppcon14で最新のテンプレートプログラミング(パートI、パートII)について語った彼のvoid_tSFINAEテクニックのプレゼンテーションを見ました。 例:すべてのテンプレート引数が正しい形式であるかどうか を評価する単純な変数テンプレートvoidがあるとします。 template< class ... > using void_t = void; そして、memberと呼ばれるメンバー変数の存在をチェックする次の特性: template< class , class = void > struct has_member : std::false_type { }; // specialized as has_member< T , void > or discarded (sfinae) template< class T > struct has_member< T , void_t< decltype( T::member ) > > …
149 c++  templates  c++14  sfinae 

5
Pythonコードの行は、インデントのネストレベルを知ることができますか?
このようなものから: print(get_indentation_level()) print(get_indentation_level()) print(get_indentation_level()) 私はこのようなものを手に入れたいです: 1 2 3 この方法でコードを読み取ることができますか? 私が欲しいのは、コードのよりネストされた部分からの出力がよりネストされることです。これによりコードが読みやすくなるのと同じように、出力も読みやすくなります。 もちろん、たとえばを使用してこれを手動で実装することもできます.format()が、私が念頭に置いていたのは、インデントレベルがprint(i*' ' + string)どこにあるかというカスタムの印刷関数でしたi。これは、私の端末で読みやすい出力を作成する簡単な方法です。 これを行うための手作業でのフォーマットの手間を省くより良い方法はありますか?

1
最近のブラウザでは、JSONハイジャックはまだ問題ですか?
Backbone.jsとTornado Webサーバーを使用しています。バックボーンでコレクションデータを受信するための標準的な動作は、JSON配列として送信することです。 一方、トルネードの標準的な動作は、次の脆弱性のためにJSON配列を許可しないことです。 http://haacked.com/archive/2008/11/20/anatomy-of-a-subtle-json-vulnerability.aspx 関連するものは:http : //haacked.com/archive/2009/06/25/json-hijacking.aspx 実際にオブジェクトのリストである場合、JSONをオブジェクトにラップする必要がないのは自然なことです。 これらの攻撃を最新のブラウザー(つまり、現在のChrome、Firefox、Safari、IE9)で再現することはできませんでした。同時に、最新のブラウザがこれらの問題に対処したことをどこにも確認できませんでした。 プログラミングスキルの低下やグーグルスキルの低下の可能性によって誤解を招かないようにするには、次のようにします。 これらのJSONハイジャック攻撃は、今日のブラウザーでも依然として問題ですか? (注:可能性のある重複して申し訳ありません:最近のブラウザで「JSONハイジャック」を実行することは可能ですか? しかし、受け入れられた回答が質問に回答していないようです-もう一度質問して、いくつかの明確な説明を取得するときがきたと思いました。)

4
MySQLのタイムゾーンをUTCに設定する必要がありますか?
/server/191331/should-servers-have-their-timezone-set-to-gmt-utcのフォローアップ質問 MySQLタイムゾーンをUTCに設定する必要がありますか、それともサーバーまたはPHPが設定されているのと同じタイムゾーンに設定する必要がありますか?(UTCでない場合) 長所と短所は何ですか?
149 mysql  time  utc 

15
Javaでzipファイルを作成する方法
ユーザーのクエリに従ってデータベースからコンテンツを選択するダイナミックテキストファイルがあります。このコンテンツをテキストファイルに書き込み、サーブレットのフォルダーに圧縮する必要があります。どうすればよいですか?
149 java  zip 

14
JDK8とラムダ(java.util.stream.Streams.zip)を使用したスト​​リームの圧縮
ラムダb93を使用するJDK 8では、ストリームを圧縮するために使用できるクラスjava.util.stream.Streams.zipがb93にありました(これは、チュートリアル「Java8ラムダを探索する」で説明されています。DhananjayNeneによるパート1)。この機能: 2つのストリームの要素を組み合わせた結果を要素とする、レイジーで順次結合されたStreamを作成します。 ただし、b98ではこれがなくなりました。実際には、Streamsクラスはb98のjava.util.streamでさえアクセスできません。 この機能は移動されましたか。移動されている場合、b98を使用してストリームを簡潔に圧縮するにはどうすればよいですか? 私が考えているアプリケーションは、このShenのJava実装にあります。 static <T> boolean every(Collection<T> c1, Collection<T> c2, BiPredicate<T, T> pred) static <T> T find(Collection<T> c1, Collection<T> c2, BiPredicate<T, T> pred) (b98の機能を使用しない)かなり冗長なコードで機能します。

16
UITableViewでセパレーターの全幅を設定する方法
私が持っているUITableViewセパレータは、全幅を持っていないところを。左側の10ピクセル前で終了します。私はこのコードをで遊んでいましたviewDidLoad()。 self.tableView.layoutMargins = UIEdgeInsetsZero; また、ストーリーボードで、カスタムセレクターまたはデフォルトセレクターを選択できる場合。これで、入力されたすべてのセルに全幅セレクターがなくなりましたが、空のセルには全幅があります。 どうすれば修正できますか?


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.