1. 程式人生 > >Android Canvas設定繪畫時重疊部分的處理模式【含效果圖】

Android Canvas設定繪畫時重疊部分的處理模式【含效果圖】

在Android的PorterDuff.Mode類中列舉了他們制定的規則:

android.graphics.PorterDuff.Mode.SRC:只繪製源影象

android.graphics.PorterDuff.Mode.DST:只繪製目標影象

android.graphics.PorterDuff.Mode.DST_OVER:在源影象的頂部繪製目標影象

android.graphics.PorterDuff.Mode.DST_IN:只在源影象和目標影象相交的地方繪製目標影象

android.graphics.PorterDuff.Mode.DST_OUT:只在源影象和目標影象不相交的地方繪製目標影象

android.graphics.PorterDuff.Mode.DST_ATOP:在源影象和目標影象相交的地方繪製目標影象,在不相交的地方繪製源影象

android.graphics.PorterDuff.Mode.SRC_OVER:在目標影象的頂部繪製源影象

android.graphics.PorterDuff.Mode.SRC_IN:只在源影象和目標影象相交的地方繪製源影象

android.graphics.PorterDuff.Mode.SRC_OUT:只在源影象和目標影象不相交的地方繪製源影象

android.graphics.PorterDuff.Mode.SRC_ATOP

:在源影象和目標影象相交的地方繪製源影象,在不相交的地方繪製目標影象

android.graphics.PorterDuff.Mode.XOR:在源影象和目標影象重疊之外的任何地方繪製他們,而在不重疊的地方不繪製任何內容

android.graphics.PorterDuff.Mode.LIGHTEN:獲得每個位置上兩幅影象中最亮的畫素並顯示

android.graphics.PorterDuff.Mode.DARKEN:獲得每個位置上兩幅影象中最暗的畫素並顯示

android.graphics.PorterDuff.Mode.MULTIPLY:將每個位置的兩個畫素相乘,除以255,然後使用該值建立一個新的畫素進行顯示。結果顏色=頂部顏色*底部顏色/255

android.graphics.PorterDuff.Mode.SCREEN:反轉每個顏色,執行相同的操作(將他們相乘併除以255),然後再次反轉。結果顏色=255-(((255-頂部顏色)*(255-底部顏色))/255)

相關推薦

Android Canvas設定繪畫重疊部分處理模式效果圖

在Android的PorterDuff.Mode類中列舉了他們制定的規則: android.graphics.PorterDuff.Mode.SRC:只繪製源影象 android.graphics.PorterDuff.Mode.DST:只繪製目標影象 android.graphics.PorterDu

Android實現介面滾動頂部部分內容置頂

先看效果。 實現與分析 很顯然,這樣的效果用到了Android Material Design裡的控制元件,分別是CoordinatorLayout和AppBarLayout。其中,AppBarLayout控制元件便具備頂部固定的功能,但它需要被Coord

Android RadioButton設定選中文字和背景顏色同時改變

在使用 RadioButton 時,有時我們會想要達到選中時文字顏色和背景顏色同時改變的效果,這裡還需要多進行幾步操作。 首先,在佈局檔案中新建一組 RadioButton : <RadioGroup andr

Android獲取兩張圖片重疊部分,並融合

/** * 融合圖裁剪 * @param big 底圖 * @param small 小圖 * @param xInRatio 小圖在底圖中的橫座標(相對於底圖寬的比例) * @param yInRatio 小圖在底圖中的縱座標(相對於底圖高的比例)

Android Studio NDK build 的錯誤處理

Android Studio專案中包含jni檔案時,編譯會遇到 Error:Execution failed for task ':app:compileDebugNdk'. 這是因為gradle android plugin試圖自己去呼叫ndk-build來編譯專案中

資訊科技2015.05原始碼基於彩色色調影象處理的目標跟蹤

本文為美國阿肯色大學(作者:ZacharyR. Sabey)的學士論文,共44頁。 如今,許多工業和商業應用開始使用無人系統來提高生產力,並降低生產和人力成本。這些應用中的大多數產品都是半無人化的,它們仍然需要人類來啟動或接收連續的指令。隨著影象處理技術、攝像機處理能力和更高效的車

Katalon Automation Recorder錄製/匯出指令碼Java(WebDriver + jUnit + POI) 配置,附一些執行錯誤的解決辦法Eclipse + Chrome

最近學習的課程中要求使用Selenium IDE來錄製/匯出指令碼,在Eclipse中用jUnit + WebDriver的配置來做一些簡單的測試。然而Selenium的配置一開始出了蠻多問題,火狐和Selenium的版本各種對不上,一氣之下換了Katalon然後發現一樣難配

語音信號處理常識摘抄|自用

detection 之間 多次 lex 之前 自動 意義 有效 ima 摘抄自:https://zhuanlan.zhihu.com/p/31193859?utm_source=qq&utm_medium=social【筆記|自用】 專業基礎 算法基礎 聲

Android 6.0執行許可權勾選不再詢問後該如何處理

Android 6.0執行時許可權勾選不再詢問後該如何處理? 當第一次請求許可權申請被拒絕後再進行第二次申請時,對話方塊中會多出一個 不再詢問 的複選框。如果勾選了該複選框並且拒絕請求,那麼以後將無法再申請該許可權。也就是說在呼叫 requestPermissions() 後,onRequest

Android 6 0 執行許可權處理

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

適用於Android的OpenGL ES教程 - 第一部分 - 設定檢視

2009年12月3日 由每埃裡克·伯格曼 在安卓,嵌入式,Java的 | 90評論 我已經在OpenGL ES 2.0 for android上開始了一個新的更新系列教程。請檢視:OpenGL ES 2.0 我將在Android手機上編寫一些

Android 6 0 執行許可權處理完全解析

                     一、概述ok,本篇文章目的之一就是對執行時許可權處理的一個介紹,以及對目前許可權相關的庫的一些瞭解。當然非常推薦閱讀官網許可權相關文章:本文也是在上述文章基礎上理解、實驗以及封裝。二、執行時許可權的變化及特點對於6.0以下的許可權及在安裝的時候,根據許可權宣告產生一個

Android AlarmManager設定多個定時事件只最後一個有效問題解決

最近用到了AlarmManager,遇到了問題,當我設定多個定時器時,發現只有一個起作用,百思不得其解,後來在網上找到了原因,把人家的解決辦法貼上: AlarmManager的常用方法有三個: (1)set(int type,long startTime,Pending

解決Android開發中ViewPager動態設定PagerAdapter第二次進入Fragment內容不顯示的問題

問題描述 筆者最近的Android專案要用到PagerSlidingTabStrip和ViewPager的組合,但是從github上下載原始碼後順利執行示例專案,用到自己的專案後發現一個問題,就是第二次進入該ViewPager所在Fragment後PagerS

android 使用canvas畫字元換行(用TextPaint實現,Paint不易實現)

使用canvas畫字元時,常常遇到字元很長,不會換行的問題. 解決辦法: 使用StaticLayout這個類. mCurrentPaint =new TextPaint(); mCurrentPaint.setColor(Color.GREEN); mCurrentPaint.setTextAlign(Al

android studio設定主題、護眼色、字型、Logcat前景色背景色、建立類,新增作者名和日期等

1、設定主題 按快捷鍵Ctrl+Alt+s,開啟settings視窗。再選擇Apprearance,選擇自己喜歡的主題,預設兩款,一個白,一個黑。我選擇的是白色預設。如圖: 2、設定護眼色  護眼

Android 6.0 執行許可權處理

執行時許可權介紹 Android 6.0在我們原有的AndroidManifest.xml宣告許可權的基礎上, 又新增了執行時許可權動態檢測,以下許可權都需要在執行時判斷: 執行時許可權處理 Android6.0系統預設為targetSdkVersion小於23的應用預設授予了所申請的所有許可權,

Android按鈕按下和彈起的顏色設定

(1)首先在res資料夾下新建一個資料夾drawable,這是無關解析度的,在下面建立一個xml檔案:button.xml <?xml version="1.0" encoding="utf

Android 6.0 執行許可權處理完全解析

一、概述 ok,本篇文章目的之一就是對執行時許可權處理的一個介紹,以及對目前許可權相關的庫的一些瞭解。 當然非常推薦閱讀官網許可權相關文章: 本文也是在上述文章基礎上理解、實驗以及封裝。 二、執行時許可權的變化及特點 對於6.0以下

Android 自定義View canvas.drawRoundRect某些機型顯示異常處理適配處理

1.drawRoundRect(left,top,right,bottom,cx,cy,paint) 該方法實在Api21之上才能使用的; 所以推薦使用 drawRoundRect(new RecF(left,top,right,bottom) ,cx,cy,paint)這個方法;這