2014-09-22 54 views
0

我有一個簡單的表單,使用媒體播放器和媒體播放器控件組件加載和播放視頻。有沒有辦法調整播放的視頻的大小,在RAD Studio XE6中使用滾動條或類似的東西。Delphi MediaPlayer調整大小

+0

哪個平臺?並用滾動條調整大小。我從來沒有遇到過這個用戶界面。你確定這就是你的意思嗎?你在努力使用滾動條嗎?或者找到如何調整大小?我猜想後者,在這種情況下討論滾動條會讓人分心。 – 2014-09-22 16:21:37

回答

0

調整大小通常是通過調整託管視口的表單而不是滾動條來完成的。嘗試將媒體播放器放置在相當大的形狀中,或將面板與所有四邊的錨定在一起,以便在調整表格的邊角時展開和收縮。

http://docwiki.embarcadero.com/Libraries/XE6/en/Vcl.MPlayer.TMediaPlayer.DisplayRect

首先,你可能會想DisplayRect設爲您已選定爲渲染控制/組件的尺寸:

+0

好吧,讓我們忘記滾動條,我只是說,希望繪製更好的圖片。假設我正在播放340x180的視頻,並且我想將它製作爲兩倍,或者放大x2,因此新視頻尺寸將爲680x360。在embarcadero文檔中找不到類似的選項。 – dearn44 2014-09-23 06:41:18

+0

將其放在面板中,將其設置爲與客戶端對齊,然後設置面板的尺寸。我不知道它是否可以讓您按比例調整比例,但在IDE中進行測試很容易。只需更改面板的高度和/或寬度,看看會發生什麼。讓我們知道。 – 2014-09-24 00:29:03

+0

我不確定我是否按照我應有的做了所有事情,但視頻的行爲如下。如果我調整面板的大小並使其比原始視頻尺寸更小,那麼視頻將會隨之而來。如果再次讓面板變大,視頻將保持不變。 – dearn44 2014-09-24 06:41:51

0

您可以通過調整DisplayRect財產實行排序ZoomIn或縮小(ZoomOut)functionalitay的針對使用顯示屬性:

http://docwiki.embarcadero.com/Libraries/XE6/en/Vcl.MPlayer.TMediaPlayer.Display

爲了避免不均勻wideo streching我建議你添加必要的代碼是AB以在保持高寬比的同時計算正確的DisplayRect尺寸。

如果你想讓你的DisplayRect比你的渲染控制更大。通過這樣做,你可以實現ZoomIn效果。

請注意,這隻會使視頻內容更加豐富,因此您可能會失去質量,因爲TMediaPlayer沒有像許多商業媒體播放器那樣使用任何特殊濾鏡。

編輯:我沒有關於在FireMonkey平臺上使用TMediaPlayer的看法,但在查看文檔後,似乎事情已經發生了很大變化。

例如在FMX上有一個叫做TMediaPlayerControll的特殊組件,它是渲染視頻所必需的。

http://docwiki.embarcadero.com/Libraries/XE7/en/FMX.Media.TMediaPlayerControl

但看文檔,我找不到任何特殊屬性或方法來CONTROLL視頻大小。所以我認爲ZoomIn或ZoomOut功能的實現將採用與正常FireMonkex組件一樣的方法。

+0

我注意到這個例子中的父級是一個vcl組件,而我正在使用FireMonkey,這可能是DisplayRect屬性不存在的原因出現錯誤的原因嗎? – dearn44 2014-09-23 07:55:21

+0

你還沒有提到你正在使用FireMonkey平臺。我已經更新了我的答案。 – SilverWarior 2014-09-23 11:50:18

+0

確實,我應該提到我沒有使用VCL。你能否舉一個例子,因爲我對使用Delphi和RAD Studio非常陌生。 – dearn44 2014-09-23 12:00:08