• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Cairo學習筆記

            Posted on 2008-11-23 20:18 Hill 閱讀(1108) 評論(0)  編輯 收藏 引用

            Cairo是一個支持多種輸出設備的2D圖形庫。當前支持的輸出目標(output target)包括:X Window System,Quartz,Win32,image buffers,PostScript,PDF,還有 SVG。

            下面研究一下Cairo的繪圖模型,首先是該模型中最重要的三個概念:這三個概念對應于下圖中的三層從上到下分別為:source,mask,destination。簡單的思想就是Source會通過Mask的過濾從而畫在我們的輸出設備(destination)上。

            source是用來繪圖的繪圖板,或者筆,墨水,繪圖的時候可以用來畫線,填充。Source可以有以下四種:Colors,Gradients,Patterns和Images。

            image imageimage

            最下面的destination,是一種surface,是要輸出的設備,可以是窗口,或者一個PDF,SVG等等。因此我們要做的是使用“動詞”構造一個合適的Mask。

            Mask被用作一個過濾器。Mask用來決定Source的哪些部分可以應用到destination上,哪些不可以用到destination上。

            所有的這三層會對應于一個Context。Context里面包含所有圖形的狀態數據(比如:線的寬度,顏色,surface to draw,還有其它,這就允許繪圖函數使用少量的參數來繪圖)。Mask層上不透明的部分可以應用到destination上,透明的地方剛不會。

            這些“動詞”包括:Stroke和Fill。Stroke允許path附近的source通過mask。而fill允許path內部的元素通過mask。(The stroke operation draws the outlines of shapes and the fill operation fills the insides of shapes.)另外的動詞還包括Paint,Mask和ShowText等。

             

            更多請參考這里:http://www.cairographics.org/tutorial/

            posts - 4, comments - 10, trackbacks - 0, articles - 0

            Copyright © Hill

            久久久久久亚洲精品不卡 | 国产毛片久久久久久国产毛片| 久久精品蜜芽亚洲国产AV| 香蕉久久夜色精品国产小说| 2020久久精品亚洲热综合一本| 久久精品草草草| 久久亚洲AV无码精品色午夜 | 狠狠色丁香久久婷婷综合蜜芽五月 | 日本强好片久久久久久AAA| 国产精品一区二区久久精品无码| 久久久久精品国产亚洲AV无码| 久久国产精品久久| 亚洲AV无码久久| 中文字幕久久亚洲一区| 青青青青久久精品国产h| 伊人久久大香线蕉无码麻豆| 99久久精品免费看国产| 久久精品亚洲中文字幕无码麻豆| 久久婷婷色综合一区二区| 色偷偷888欧美精品久久久| 97超级碰碰碰久久久久| 久久偷看各类wc女厕嘘嘘| 亚洲综合日韩久久成人AV| 久久精品免费全国观看国产| 久久人人青草97香蕉| 久久精品一区二区影院| 久久996热精品xxxx| 久久93精品国产91久久综合| 99久久综合国产精品二区| 久久综合九色综合久99| 狠色狠色狠狠色综合久久| 国产精品久久久久影院嫩草| 丰满少妇人妻久久久久久| 99久久超碰中文字幕伊人 | 久久亚洲中文字幕精品一区四| 久久激情五月丁香伊人| 日韩久久无码免费毛片软件| 亚洲欧美日韩精品久久亚洲区| 久久亚洲sm情趣捆绑调教| 日韩人妻无码精品久久免费一 | 91精品婷婷国产综合久久|