首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Swf转mp4+mp4转gif等格式的方法

    我们都知道swf文件(ShockwaveFlash的简称,读作swiff)在前几年是非常火的,由于他是基于矢量绘图的flash动画文件,他的图像效果,交互效果等都非常出色,而且文件本身还很小巧,尤其适合在网页端进行显示,以至于很多的演示视频,甚至小游戏都是用swf文件来保存的。不过近几年随着Html5的发展,他在移动端的优点渐渐消失,甚至很多浏览器也开始不支持flash插件。而且如果在电脑上运行还得额外安装flash player,很是麻烦。比如很多情况下,我们还是需要在网页中播放swf文件进行演示,或者将这个swf文件放到另外一台电脑中播放,这样我们还得搞定用户浏览器是否支持flash插件或者另外一台电脑是否安装了flash player。因此最方便的做法就是提前把swf文件转化为mp4视频文件进行播放,甚至是直接制作成动态图片的效果。

    02

    AIGC席卷智慧办公,金山办公如何架构文档智能识别与理解的通用引擎?

    如今,智慧办公是企业办公领域数字化转型的题中之义。作为国内最早开发的软件办公系统之一,金山办公如何应用深度学习实现复杂场景文档图像识别和技术理解?本文将从复杂场景文档的识别与转化、非文本元素检测与文字识别、文本识别中的技术难点等多个方面进行深度解析。 作者 | 金山办公CV技术团队 出品 | 新程序员 在办公场景中,文档类型图像被广泛使用,比如证件、发票、合同、保险单、扫描书籍、拍摄的表格等,这类图像包含了大量的纯文本信息,还包含有表格、图片、印章、手写、公式等复杂的版面布局和结构信息。早前这些信息均采用

    01

    go给图片添加文字

    import ( "flag" "image" "image/draw" "image/jpeg" "io/ioutil" "log" "os" "github.com/golang/freetype" "golang.org/x/image/font" ) var ( dpi = flag.Float64("dpi", 72, "screen resolution in Dots Per Inch") fontfile = flag.String("fontfile", "luxisr.ttf", "filename of the ttf font") hinting = flag.String("hinting", "none", "none | full") size = flag.Float64("size", 12, "font size in points") spacing = flag.Float64("spacing", 1.5, "line spacing (e.g. 2 means double spaced)") wonb = flag.Bool("whiteonblack", false, "white text on a black background") ) var text = []string{ "33333333333333333", } func main() { flag.Parse() //读取字体 fontBytes, err := ioutil.ReadFile(*fontfile) if err != nil { log.Println(err) return } //解析字体 f, err := freetype.ParseFont(fontBytes) if err != nil { log.Println(err) return } // 初始化图片背景 fg := image.Black if *wonb { fg = image.White } //初始化一张图片,生成原图 imgB, _ := os.Open("a.jpg") img, _ := jpeg.Decode(imgB) defer imgB.Close() b := img.Bounds() rgba := image.NewNRGBA(b) draw.Draw(rgba, rgba.Bounds(), img, image.ZP, draw.Src) //在图片上面添加文字 c := freetype.NewContext() c.SetDPI(*dpi) //设置字体 c.SetFont(f) //设置大小 c.SetFontSize(*size) //设置边界 c.SetClip(rgba.Bounds()) //设置背景底图 c.SetDst(rgba) //设置背景图 c.SetSrc(fg) //设置提示 switch *hinting { default: c.SetHinting(font.HintingNone) case "full": c.SetHinting(font.HintingFull) } // 画文字 pt := freetype.Pt(10, 10+int(c.PointToFixed(*size)>>6)) for _, s := range text { _, err = c.DrawString(s, pt) if err != nil { log.Println(err) return } pt.Y += c.PointToFixed(*size * *spacing) } imgw, _ := os.Create("out.jpg") jpeg.Encode(imgw, rgba, &jpeg.Options{100}) defer imgw.Close() }

    04
    领券