2011-10-29 4 views
3

私は、ユーザーがYoutubeのリンクを動画に投稿できるギャラリーがあり、サーバーはYoutubeからサムネイルを自動的に取得します。しかし、ビデオの多くは、画像の上部と下部に黒色のバーがあります。私は黒いバーの起源を知っていますが、サムネイルを四角形にリサイズすると、黒いバーがデザインに干渉します。ビデオサムネイルから黒いバーを削除する

黒の色が見つからなくなるまでピクセルの色を分析しようとしましたが(imagecolorat())、黒い色が残っているため画像に小さなバーが残ります。

さらに効果的なアルゴリズムが確認できますか?

+0

PHPを使用すると、画像をトリミングして[this](http://pastebin.com/TH0e7nbu)のような黒い枠線を削除することができます。 – machineaddict

答えて

2

色で表示したい場合は、wideimage library(GDベース)にはこれが既に実装されています。方法は、、online demonstration existsと呼ばれます。

これは既にあなたのニーズを満たすかもしれません。

2

ビデオの比率(4:3または16:9)を確認し、その比率を維持するにはサムネイルをトリミングする必要があります。色を検出しようとしていません。

6

解決策の1つは、youtubeと同じことをすることです。 あなたは自分のサイトを訪問し、画像や映像をラップ要素を見れば、あなたはそのラップ要素がためにCSSと類似してい表示されます。この1:彼らは上下に黒い部分が含まれている画像を使用している

display:inline-block; 
height: /*here goes fixed height in px*/ 
overflow: hidden; 

(そのコンテナ内で)、彼らはそれを隠すためにCSSを使用しました。 これは、要素が(att表示付きのYouTubeスパンでは:インラインブロック)、実際の画像よりも小さくなり、画像が中央に配置されるようになり、上下の黒い領域がより小さなラップをオーバーフローして非表示になることを意味します。

関連する問題