Bitmap拉伸後出現鋸齒的幾種解決辦法
最近在做Flow Em時 遇到圖片拉伸後出現嚴重鋸齒的情況,後來網上查了下,經過幾次嘗試算是解決了問題,現在就來總結下:
網上搜到的兩種解決方法:
1.給Paint加上抗鋸齒標誌。然後將Paint物件作為引數傳給canvas的繪製方法。
paint.setAntiAlias(true);
canvas.drawBitmap(bmp ,fX,fY,paint);
2.直接給canvas加抗鋸齒。
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG));
這兩種方法 大多數情況下都能解決問題,但是部分情況下效果不太理想。除此之外還可以嘗試下面兩種方法:
3. 建立bitmap時就做拉伸處理:
Bitmap bmp = Bitmap.createScaledBitmap(bmpSrc, (int) (bmpSrc.getWidth() * scale), (int) (bmpSrc.getHeight() * scale), true);
注意這個 方法的最後一個引數一定要設為true,否則無法去鋸齒
4 .在繪製影像時利用matrix對影像進行拉伸。
Matrix matrix = new Matrix();
matrix.setTranslate(fX,fY);
matrix.postScale(scale,scale,fX,fY);
canvas.drawBitmap(bmp,matrix,null);
相關文章
- 使用PorterDuff解決clipPath無法抗鋸齒問題
- win10顯示器字型鋸齒怎麼辦 win10顯示器字型鋸齒解決方法Win10
- win10圖示鋸齒怎麼消除_win10圖示鋸齒的解決方法Win10
- win10電腦字型鋸齒嚴重的原因_win10字型有鋸齒怎麼辦Win10
- git rebase後出現(master|REBASE 1/10)的解決辦法GitAST
- qt標題,解決title的png圖片scaled後顯示有明顯鋸齒QT
- 第5章-著色基礎-5.4-鋸齒和抗鋸齒
- 隨身碟無法停止通用卷的幾種解決辦法
- CSS元素高度塌陷的幾種常見解決辦法!CSS
- Qt 文字抗鋸齒QT
- git出現Permission denied的解決辦法Git
- scp出現錯誤的解決辦法
- win10瀏覽器字型鋸齒如何恢復 徹底解決win10瀏覽器字型鋸齒方法Win10瀏覽器
- canvas實現的鋸齒效果程式碼例項Canvas
- 幾種解決“藍芽不可用”問題的辦法藍芽
- 關於IIS安裝後出現500錯誤的解決辦法
- stm出現Flash Timeout解決辦法
- LoadRunner中文出現亂碼的解決辦法
- orachk 的幾個waring 解決辦法
- 虛擬機器ping不通的幾種原因及解決辦法虛擬機
- 滑鼠右擊傳送到後出現無效快捷方式的解決辦法
- Linux 出現 su: Authentication failure 解決辦法LinuxAI
- 伺服器iis出現假死解決辦法伺服器
- Mysql出現連線錯誤解決辦法MySql
- man出錯解決辦法
- 在linux字型下的顯示問題及幾種解決辦法Linux
- CSS3郵票鋸齒邊框效果詳解CSSS3
- android中Bitmap的剪下與拉伸Android
- CSS3郵票鋸齒效果CSSS3
- secureCRT使用退格鍵(backspace)出現^H解決辦法Securecrt
- 執行 xhost + 出現 unable to open display 解決辦法
- IMG圖片下面出現下邊距的解決辦法
- 安裝VMware出現“Error 1406”的解決辦法Error
- mysql安裝出現 conflicts with mysql*的解決辦法MySql
- 解決Mysql資料庫插入資料出現問號(?)的解決辦法MySql資料庫
- cocos2d-x解決中文亂碼問題的幾種辦法
- 安裝CentOS7出現dracut:/#……time解決辦法CentOS
- Debian出現in the drive ‘/media/cdrom/’ and press enter解決辦法