【发布时间】:2012-10-16 03:11:24
【问题描述】:
我正在尝试开发 Flash 插件,它将在播放器上打印一些文本。我的问题是如何做到这一点?我的意思是有什么功能可以在播放器上放一些文字吗?
【问题讨论】:
标签: jwplayer
我正在尝试开发 Flash 插件,它将在播放器上打印一些文本。我的问题是如何做到这一点?我的意思是有什么功能可以在播放器上放一些文字吗?
【问题讨论】:
标签: jwplayer
没有为播放器显示文本的内置函数,但你自己应该很容易做到。
首先,这是 JWPlayer 的 documentation 用于创建 Flash 插件。
那么你要做的就是在插件的显示中添加一个精灵和一个文本字段。
首先,您需要在 .as 文件的开头导入相关的 flash 类。
import flash.text.TextField
import flash.text.TextFormat;
import flash.display.Sprite;
然后你想创建一个 Sprite 和一个 TextField。将 TextField 放在 Sprite 中,将 Sprite 放在播放器的显示控件中。
var textHolderSprite:Sprite = new Sprite();
var displayText:TextField = new TextField();
displayText.width = 200; // set size of your text field
displayText.height = 300;
displayText.x = 50;//and position it.
displayText.y = 100;
displayText.text = "hello world";//set the text you want to display.
displayText.wordWrap = true; // wrap text if you want to.
displayText.selectable = false; //probably want to make it not selectable.
displayText.textColor = 0xFFFFFF; //set the text colour;
//bonus: set font size and alignment; look at TextFormat documentation for more options.
var displayTextFormat:TextFormat = new TextFormat();
displayTextFormat.size = "17";
displayTextFormat.align = "center";
displayText.setTextFormat(displayTextFormat);
//put the TextField inside the sprite.
textHolderSprite.addChild(displayText);
//the following api object, is a com.longtailvideo.jwplayer.player.IPlayer object, as described in the JWPlayer plugin documentation.
var displayControl:MovieClip = (api.controls.display as MovieClip); //get the player's display control.
displayControl.addChild(textHolderSprite);//add youre sprite.
//When you're done with the text, don't forget to remove the sprite.
displayControl.removeChild(textHolderSprite);
祝你好运!
【讨论】:
JWPlayer 支持 SRT 文件(字幕),所以你可以创建这个文件来在你的视频上放置文本,如果你需要生成这些文本,你可以使用 PHP 来完成,然后给出输出 url
你可以在他们的官方网站上找到更多关于如何添加字幕的信息
其他方式可以只是使用 CSS 和 Javascript 的组合在视频播放器容器上添加文本
【讨论】: