VB编写程序实现SRT视频外挂字幕
	
    
    
	      在DVDRip、MKV等720P高清视频中,srt、ssa、ass、idx、sub等外挂字幕非常流行,采用的显示技术毫不例外都是VSFilter(早期版本是VobSub)和AviSynth外挂字幕插件。显示的点阵汉字非常漂亮!现在流行的多媒体播放器,如KMPlayer、暴风影音等都采用了上述DirectVobSub技术。虽然DirectVobSub技术具有开放性强,支持众多语言编写的播放器,但经常有挂不上字幕的问题。于是,想到用VB来编写外挂字幕程序。那VB能否实现外挂字幕呢?答案是肯定的!对于idx、sub等图形字幕来说,VB无能为力;但对于文本字幕srt、ssa、ass,VB还是可以解决的。虽不能和DirectVobSub技术相比,但基本功能还是可以实现的。请看下面VB编写的srt字幕解析代码:
'********************************************************************************
'* 模块名称:Srttitle.bas
'* 调用srt字幕文件成功后:SRTFileAnalysis返回字幕个数(每一个srt字幕可能有多行显示文本)
'* 调用失败后SRTFileAnalysis返回一个长整型数0
'* 特别声明:转载请用IP地址,严禁原文转载!
'* 作者:Chenjl1031(东方之珠) 
'********************************************************************************
Option Explicit
Public SRTtitle() As String 'srt字幕数组
'srt字幕提取
Public Function SRTFileAnalysis(ByVal SrtFileName As String) As Long
       Dim LineCount As Long, FileNumber As Long, TimeLenth As Long, TimeNumber As Long
       Dim Stitle As String, TimeLabel(1 To 2) As String, St As String, StC As String, sSrt() As String
       Dim GotTime As Boolean
       Dim sHour As Long, sMunite As Long, sSecond As Long, s1 As Long, s2 As Long, s3 As Long
       
       On Error Resume Next
       
       If Dir(SrtFileName) = "" Then SRTFileAnalysis = 0: Exit Function
       '扫描srt字幕个数并定义字幕数组
       FileNumber = FreeFile: LineCount = 1
&
    
     
	
	
    
    
	相关文档:
        
    
    '* ************************************************************** *   
'*    程序名称:Button.ctl   
'*    程序功能:透明浮动按扭   
'*    作者:lyserver,最后修改日期:2009年11月   
'*    联系方式:http://blog.csdn.net/lyserver   
'* ************************************************************ ......
	
    
        
    
    简单而实用的合并Excel文件的函数,能够将多个XLS文件中指定数量的工作表自动合并到一个XLS文件里。当然,如果只是数据合并,则使用ADO就可以实现,但如果要保留表格格式,则恐怕只能使用俺的方法了。
    一、函数代码:
Option Explicit
'* ********************************************************* ......
	
    
        
    
    VBA
命名规则及代码规范
 
马维峰
(maweifeng@263.net
)
 
1.       
VBA
命名规则
一个好的命名规则可以提高程序的可读性,减少错误发生的概率,命名规则不是一定的,不同的人有不同的规则和习惯,但在编程过程中,对于个人或工作组,一定要遵守相同的命名规则。
1.1. ......
	
    
        
    
    植物大战僵尸这个小游戏做的还真不错,我看到了几个版本的植物大战僵尸修改器,如C++版,C#版,所以就改写了一个VB版本的,以下是源码
'界面中有两个按钮,分别是cmdSunUnlimited(caption为启用阳光无限),cmdMoneyUnlimited(caption为启用金钱无限),并且需要放两个Timer控件,名称为默认值timer1和timer2
'基地址直 ......
	
    
        
    
    VC实现类似VB中的LinkLabel功能
 
 //VB里面有个LinkLabel,VB中的Label在VC中式CStatic,但是VC中CStatic没有类似LinkLabel的功能。可以自己
//添加一点代码来实现:
//不知道为什么IDC_HANDD一定要自己定义一下
#define IDC_HAND MAKEINTRESOURCE(32649)
//处理鼠标移动
void CAppNonameDlg::OnMouseMov ......