fbpx
维基百科

Skia Graphics Library

Skia Graphics Library(SGL)是一個由C++編寫的開放原始碼圖形庫,最初由Skia公司開發,被Google收購後以New BSD License許可下開源。

Skia Graphics Engine
原作者Skia公司
開發者Google
源代码库
  • skia.googlesource.com/skia
编程语言C++
类型圖形庫
许可协议New BSD License
网站skia.org

Skia公司所開發的第一個產品就是Skia Graphics Library,能在低端裝置如手機上呈現高品質的2D圖形。截至2017年 (2017-Missing required parameter 1=month!),它已被應用於AndroidGoogle ChromeChrome OSChromium OSMozilla FirefoxFirefox OS以及Sublime Text

2012年时Skia有大概80,000行程式碼,以C++開發而成[1]

範例

Skia主要的類別是SkCanvas,所有的繪圖功能都是實作於此類別。以下是SGL簡單的程式碼:

SkCanvas* can = GraphicsJNI::getNativeCanvas(...); SkPaint paint; paint.setARGB(255, 0, 0, 255); can->drawText("Hello, world", 12, 10, 10, paint); 

“绿化”缺陷

为了提高运行的效率,Google在Android的Skia实现中,对JPG压缩处理算法改写来代替调用libjpeg-turbo,实现了一个低精度的YUV转换为RGB的算法,但该改写算法中除法取整的方式不合理,不仅每次压缩后画质劣化更严重,随着误差逐步累积,还会导致图片会越来越偏向绿色。最终该缺陷在2016年4月得到修复,修改回直接使用libjpeg-turbo的调用。[2]而作为Android基础库的一部分,该修复也被认为预计于Android 7中修复。

参见

  • cairo
  • Direct2D
  • OpenVG
  • Starling Framework英语Starling Framework
  • Anti-Grain Geometry英语Anti-Grain Geometry

参考资料

  1. ^ android 的图形引擎 skia. [2011-07-05]. (原始内容存档于2012-08-04). 
  2. ^ Use libjpeg-turbo for YUV->RGB conversion in jpeg encoder · google/skia@c7d01d3. GitHub. [2017-03-13]. (原始内容于2019-02-17) (英语). 

外部链接

skia, graphics, library, 是一個由c, 編寫的開放原始碼圖形庫, 最初由skia公司開發, 被google收購後以new, license許可下開源, skia, graphics, engine原作者skia公司開發者google源代码库skia, googlesource, skia编程语言c, 类型圖形庫许可协议new, license网站skia, org自由软件主题, skia公司所開發的第一個產品就是, 能在低端裝置如手機上呈現高品質的2d圖形, 截至2017年, 2017, m. Skia Graphics Library SGL 是一個由C 編寫的開放原始碼圖形庫 最初由Skia公司開發 被Google收購後以New BSD License許可下開源 Skia Graphics Engine原作者Skia公司開發者Google源代码库skia wbr googlesource wbr com wbr skia编程语言C 类型圖形庫许可协议New BSD License网站skia wbr org自由软件主题 Skia公司所開發的第一個產品就是Skia Graphics Library 能在低端裝置如手機上呈現高品質的2D圖形 截至2017年 2017 Missing required parameter 1 month update 它已被應用於Android Google Chrome Chrome OS Chromium OS Mozilla Firefox Firefox OS以及Sublime Text 2012年时Skia有大概80 000行程式碼 以C 開發而成 1 目录 1 範例 2 绿化 缺陷 3 参见 4 参考资料 5 外部链接範例 编辑Skia主要的類別是SkCanvas 所有的繪圖功能都是實作於此類別 以下是SGL簡單的程式碼 SkCanvas can GraphicsJNI getNativeCanvas SkPaint paint paint setARGB 255 0 0 255 can gt drawText Hello world 12 10 10 paint 绿化 缺陷 编辑为了提高运行的效率 Google在Android的Skia实现中 对JPG压缩处理算法改写来代替调用libjpeg turbo 实现了一个低精度的YUV转换为RGB的算法 但该改写算法中除法取整的方式不合理 不仅每次压缩后画质劣化更严重 随着误差逐步累积 还会导致图片会越来越偏向绿色 最终该缺陷在2016年4月得到修复 修改回直接使用libjpeg turbo的调用 2 而作为Android基础库的一部分 该修复也被认为预计于Android 7中修复 参见 编辑 自由软件主题 cairo Direct2D OpenVG Starling Framework 英语 Starling Framework Anti Grain Geometry 英语 Anti Grain Geometry 参考资料 编辑 android 的图形引擎 skia 2011 07 05 原始内容存档于2012 08 04 Use libjpeg turbo for YUV gt RGB conversion in jpeg encoder google skia c7d01d3 GitHub 2017 03 13 原始内容存档于2019 02 17 英语 外部链接 编辑官方网站 YouTube上的Skia Path Ops High Performance Set Operations for Geometry http www slideshare net snailee skia freetype android 2d graphics essentials 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title Skia Graphics Library amp oldid 63145343, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。