• <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 閱讀(1102) 評論(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

            国产精品无码久久久久久| 久久青青草原精品国产软件| 亚洲日本va午夜中文字幕久久| 久久亚洲高清综合| 久久精品免费一区二区| 丰满少妇高潮惨叫久久久| 久久99精品国产麻豆不卡| 久久婷婷五月综合97色直播| 2020久久精品国产免费| 久久人人爽人人精品视频| 一本色道久久HEZYO无码| 91久久九九无码成人网站| 2021国产精品久久精品| 99久久精品毛片免费播放| 亚洲午夜精品久久久久久浪潮| 久久综合国产乱子伦精品免费 | yy6080久久| 草草久久久无码国产专区| 漂亮人妻被黑人久久精品| 久久久久18| 国产精品99久久久久久宅男| 久久精品国产网红主播| 中文字幕无码av激情不卡久久| 99久久国产综合精品五月天喷水| 伊人久久大香线蕉av不卡| 青春久久| 久久亚洲国产成人精品无码区| 香蕉久久夜色精品国产小说| 97久久精品无码一区二区天美| 久久99这里只有精品国产| 国产视频久久| 国产精品久久久久一区二区三区 | 久久亚洲日韩看片无码| 久久人人爽人人澡人人高潮AV| 亚洲国产精品一区二区久久| 精品999久久久久久中文字幕| 亚洲精品国产美女久久久| 精品久久久无码21p发布| 亚洲精品乱码久久久久久蜜桃不卡| 久久午夜福利无码1000合集| 欧美国产成人久久精品|