android 圖片分析,Android圖片處理實例分析

本文實例講述了Android圖片處理的方法。分享給大家供大家參考,具體如下:

package cn.szbw.util;

import Android.content.Context;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.graphics.Canvas;

import android.graphics.Matrix;

import android.graphics.Paint;

public class Utils {

/***

* 加載本地圖片

* @param context:主運行函數實例

* @param bitAdress:圖片地址,一般指向R下的drawable目錄

* @return

*/

public final Bitmap CreatImage(Context context, int bitAdress) {

Bitmap bitmaptemp = null;

bitmaptemp = BitmapFactory.decodeResource(context.getResources(),bitAdress);

return bitmaptemp;

}

//2.圖片平均分割方法,將大圖平均分割為N行N列,方便用戶使用

/***

* 圖片分割

* @param g

* :畫布

* @param paint

*:畫筆

* @param imgBit

*:圖片

x

*:X軸起點坐標

* @param y

*:Y軸起點坐標

* @param w

* :單一圖片的寬度

* @param h

*:單一圖片的高度

* @param line

*:第幾列

* @param row

* :第幾行

*/

public final void cuteImage(Canvas g, Paint paint, Bitmap imgBit, int x,

int y, int w, int h, int line, int row) {

g.clipRect(x, y, x + w, h + y);

g.drawBitmap(imgBit, x - line * w, y - row * h, paint);

g.restore();

}

//3.圖片縮放,對當前圖片進行縮放處理

/***

* 圖片的縮放方法

* * @param bgimage

*:源圖片資源

* @param newWidth

*:縮放后寬度

* @param newHeight

*:縮放后高度

* @return

*/

public Bitmap zoomImage(Bitmap bgimage, int newWidth, int newHeight) {

// 獲取這個圖片的寬和高

int width = bgimage.getWidth();

int height = bgimage.getHeight();

// 創建操作圖片用的matrix對象

Matrix matrix = new Matrix();

// 計算縮放率,新尺寸除原始尺寸

float scaleWidth = ((float) newWidth) / width;

float scaleHeight = ((float) newHeight) / height;

// 縮放圖片動作

matrix.postScale(scaleWidth, scaleHeight);

Bitmap bitmap = Bitmap.createBitmap(bgimage, 0, 0, width, height,

matrix, true);

return bitmap;

}

//4.繪制帶有邊框的文字,一般在游戲中起文字的美化作用

/**

* 繪制帶有邊框的文字

* @param strMsg

* :繪制內容

* @param g

*:畫布

* @param paint

*:畫筆

* @param setx

*:X軸起始坐標

* @param sety

*:Y軸的起始坐標

* @param fg

*:前景色

* @param bg

* :背景色

*/

public void drawText(String strMsg, Canvas g, Paint paint, int setx,

int sety, int fg, int bg) {

paint.setColor(bg);

g.drawText(strMsg, setx + 1, sety, paint);

g.drawText(strMsg, setx, sety - 1, paint);

g.drawText(strMsg, setx, sety + 1, paint);

g.drawText(strMsg, setx - 1, sety, paint);

paint.setColor(fg);

g.drawText(strMsg, setx, sety, paint);

g.restore();

}

}

希望本文所述對大家Android程序設計有所幫助。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/530090.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/530090.shtml
英文地址,請注明出處:http://en.pswp.cn/news/530090.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

android開發按鈕顏色,Android編程實現簡單設置按鈕顏色的方法

本文實例講述了Android編程實現簡單設置按鈕顏色的方法。分享給大家供大家參考,具體如下:1.工程目錄a.在res目錄-新建drawble文件夾放入自定義圖片2.main.xmlandroid:orientation"vertical"android:layout_width"fill_parent"androi…

艾默生變頻器ev1000故障代碼_國產變頻器型號大全,梳理國產變頻的前世今生!...

在工控領域,變頻器已經廣為所知且應用范圍廣泛,各方對變頻器能給出形形色色的描述。維基百科給出的定義:“變頻器(variable frequency drive,常見縮寫VFD),也稱為變頻驅動器或驅動控制器。變頻器是可調速驅動系統的一種…

android音樂播放器案例,Android MediaPlayer實現音樂播放器實例代碼

Android MediaPlayer實現音樂播放器1、布局文件android:layout_width"fill_parent"android:layout_height"fill_parent"android:orientation"vertical" >android:id"id/hint"android:layout_width"wrap_content"android:…

單邊指數信號的特點_今日股市分析:上證指數若能守住3400,蓄力反彈就有戲...

昨日整體概況上漲:848只 下跌:3009只漲停:69只 跌停:12只昨天的上證指數低開低走,午后沖紅又回落,另一邊的創業板卻是單邊下行跌超3%,板塊方向農業、洪水概念股、還有電力板塊較強。按照昨日置頂…

萬豐科技機器人排名_機器人系統集成“7宗最”

摘要:對于眾多集成商而言,作為典型的“夾心餅奧利奧”,面對客戶的各種要求,“不敢勉強你,只好為難自己”系真實寫照。1、企業數量最多GGII統計數據顯示,截至2019年年底,中國工業機器人產業企業數…

android 電池高溫關機,Android 關機問題分析指南

本篇文章主要介紹 Android 開發中的 關機 部分知識點,通過閱讀本篇文章,您將收獲以下內容:1 . 確認是亮屏關機還是滅屏關機?關機時是否有播放關機動畫?2 . 是直接關機還是關機后會自動重啟?3.異常關機時,連…

android switch 未定義,在switch語句中初始化時未定義的變量?

問題本身就是一個明顯的答案.無論如何,這是我的代碼片段......switch(cSet)...case 8:{ //Special CharactersfinalSet special;char* charSet new char[special.size() 1];charSet[special.size()] 0; //Append null terminatormemcpy(charSet, special.c_str(), special.…

android 克隆對象,克隆會破壞單例對象嗎?

假設有這樣一個場景,如果復制的目標對象恰好是單例對象,那會不會破壞單例對象呢?當然,我們在已知的情況下肯定不會這么干,但如果發生了意外怎么辦?不防來修改一下代碼。public class ConcretePrototype imp…

轉網口顯示未識別的網絡_已有1700萬用戶攜號轉網 超99%用戶1小時內辦結

攜號轉網是利國利民的大舉措,受到了很多電信用戶的擁護和支持。12月15日,工信部副部長劉烈宏在某會議上進行報告指出,目前我國 “攜號轉網”服務已經累計有 1700 萬用戶完成攜轉,一小時攜轉成功辦結率超過 99%。已有1700萬用戶攜號…

adb 更新 android sdk,[轉載]安裝Android時SDK?AVD?MANAGER時更新報錯的解決辦法

最近安裝Android SDK時,發現更新時出現“A folder failed to be renamed ormoved.”等類似錯誤。經過測試和G后發現解決辦法目前有兩種情況:1、確實是因為打開了相關目錄或者其他程序占用率文件夾句柄。關閉相關資源管理器或者關閉相關程序即可&#xff…

2020.2idea怎么創建html項目_陳肆橫項目日記:百度百科怎么創建自己的名字

百度百科是一個介紹人物很好的平臺,很多的都想創造屬于自己的百度百科。而人物百科詞條,是百度百科專門為知名人物提供個人信息展示的平臺。創建一個屬于自己的百度百科詞條,就相當于擁有了一張名片,不僅有著影響力與知名度的傳播…

android c++ gizp 調用 so,使用ndk-build編譯 android調用的so庫

前沿編譯so的方法有兩種方法第一種就是編寫原生的makefile文件利用gcc進行編譯,這里我講解的是另外一種。采用NDK提供的ndk-build編譯。簡介使用ndk編譯的時候需要介紹它的腳本文件,Android.mk和Application.mk,但是Application.mk是可選的,用…

elctron項目_electron項目結構介紹

#項目結構my-project├─ .electron-vue(webpack配置文件)│ └─ build.js(生產環境構建代碼)│ └─ dev-client.js(熱加載相關)│ └─ dev-runner.js(開發環境啟動入口)│ └─ webpack.main.config.js(主進程配置文件)│ └─ webpack.renderer.config.js(渲染進程配…

無法啟動mysqll1006_CentOS7下MySQL服務啟動失敗原因及解決方法

在重啟阿里的CentOS7服務器后,重啟MySQL 出現錯誤Starting mysqld (via systemctl):Job for mysqld.service failed because the control process exited with error code.See "systemctl status mysqld.service" and "journalctl -xe" fordetails.[FAILED…

html5判斷多選框是否選擇的函數,復選框(checkbox)、多選框

1、需求分析可同時選中多個選項,實現全選、全不選、反選等功能。2、技術分析基礎的HTML、CSS、JavaScript。3、詳細分析3.1 HTML部分圖示是一個列表加底部一段文字說明,列表包含三個部分,整體是一個多選列表,上部是總的選項&#…

layer調用父頁面方法_Ruby for SketchUp之圖層【Layer】

我們學習了群組、組件及組件定義,今天來看看圖層【Layer】,在Sketchup2020版本中已經更名為“標記”,如圖那么圖層在我們建模過程中能帶來哪些便利呢?可以快速的隱藏同一圖層內所有東西,而不需要逐一選擇并右鍵點擊隱藏…

html盒子有哪些屬性,盒子模型有哪些屬性 在html5中哪些元素具有盒子模型

HTML盒模型基本屬性有哪些CSS盒子模型就是在CSS技術所使用的一種思維模型。CSS假定所有的HTML文檔元素都生成一個描述該元素在HTML文檔布局中所占空間的矩形元素框,可以形象地將其看作是一個盒子。通過定義一系列與盒子相關的屬性,可極大地豐富和促進各個…

huffman編碼的程序流程圖_F28379D之CLB解碼多摩川編碼器2——LIB版例程講解(原創)...

我在第一篇文章中已經跟大家介紹過379解碼多摩川編碼器的一些入手小知識,鏈接如下TMS320F28379D之CLB解碼多摩川編碼器1——入手小知識(原創)請大家一定要看入手小知識,再來看例程分析。今天跟大家分析一下TI的官方例程。首先&…

html統計表合并單元格的快捷鍵,word怎樣設置合并單元格快捷鍵

word2010中合并單元格的快捷鍵是什么?求解答。合并單元格沒有快捷鍵,不過有個f4是重復上一步操作,所以你要合并多個單元格,那么你可以先點一合并單元格,然后選定你要合并的區域。WORD合并單元格的快捷鍵怎么設置word合并單元格快…

fcm 服務器接入 golang_Golang 寫的即時通訊服務器 im(服務組件形式)

簡要介紹im是一個即時通訊服務器,代碼全部使用golang完成。主要功能1.支持tcp,websocket接入2.離線消息同步3.單用戶多設備同時在線4.單聊,群聊,以及超大群聊天場景5.支持服務水平擴展gim和im有什么區別?gim可以作為一…