❶ 圖片的四種格式.jpg、.gif、.png、.bmp各是什麼意思
1、文件後輟名為".jpg"或".jpeg",是最常用的圖像文件格式,由一個軟體開發聯合會組織制定,是一種有損壓縮格式,能夠將圖像壓縮在很小的儲存空間,圖像中重復或不重要的資料會被丟失,因此容易造成圖像數據的損傷。
2、圖形交換格式(外語簡稱:GIF、外語全稱:GraphicsInterchangeFormat),是CompuServe公司在 1987年開發的圖像文件格式。
GIF文件的數據,是一種基於LZW演算法的連續色調的無損壓縮格式。其壓縮率一般在50%左右,它不屬於任何應用程序。幾乎所有相關軟體都支持它,公共領域有大量的軟體在使用GIF圖像文件。
3、攜帶型網路圖形(外語簡稱PNG、外語全稱:PortableNetworkGraphics),是網上接受的最新圖像文件格式。PNG能夠提供長度比GIF小30%的無損壓縮圖像文件。它同時提供 24位和48位真彩色圖像支持以及其他諸多技術性支持。
由於PNG非常新,所以並不是所有的程序都可以用它來存儲圖像文件,但Photoshop可以處理PNG圖像文件,也可以用PNG圖像文件格式存儲。
4、BMP 是(Windows點陣圖) Windows 點陣圖可以用任何顏色深度(從黑白到 24 位顏色)存儲單個光柵圖像。Windows 點陣圖文件格式與其他 Microsoft Windows 程序兼容。它不支持文件壓縮,也不適用於 Web 頁。
Windows 點陣圖文件格式的缺點超過了它的優點。為了保證照片圖像的質量,請使用 PNG 、JPEG、TIFF 文件。BMP 文件適用於 Windows 中的牆紙。
(1)服務端請求的圖片什麼格式擴展閱讀:
jpg格式的圖片轉換成tif圖片格式的方法:
1、首先在格式工廠軟體首頁的圖片下面點擊你要轉換的最終格式【TIF】。
❷ 手機圖片是什麼格式
手機圖片通常為JPG/JPEG、PNG、GIF格式。
1、JPG/JPEG
最適合於使用真彩色或平滑過渡式的照片和圖片。該格式使用有損壓縮來減少圖片的大小,因此用戶將看到隨著文件的減小,圖片的質量也降低了,當圖片轉換成.jpg文件時,圖片中的透明區域將轉化為純色。
2、PNG
可移植的網路圖形格式適合於任何類型,任何顏色深度的圖片。也可以用PNG來保存帶調色板的圖片。該格式使用無損壓縮來減少圖片的大小,同時保留圖片中的透明區域,所以文件也略大。
3、GIF
GIF,圖形交換格式。最適合用於線條圖的剪貼畫以及使用大塊純色的圖片。該格式使用無損壓縮來減少圖片的大小,當用戶要保存圖片為.GIF時,可以自行決定是否保存透明區域或者轉換為純色。同時,通過多幅圖片的轉換,GIF格式還可以保存動畫文件。
(2)服務端請求的圖片什麼格式擴展閱讀:
用法
JPEG在色調及顏色平滑變化的照片或是寫實繪畫(painting)上可以達到它最佳的效果。在這種情況下,它通常比完全無損方法作更好。
仍然可以產生非常好看的影像(事實上它會比其他一般的方法像是GIF產生更高質量的影像,因為GIF對於線條繪畫(drawing)和圖標的圖形是無損,但針對全彩影像則需要極困難的量化)。
照片
JPEG壓縮的不自然現象可以很好地調和到細微非均勻材質的照片中,因此允許得到更高的壓縮率。
醫學影像:少見的JPEG12位支持模式
有很多醫學的影像系統可以創建和處理12位JPEG影像。12位JPEG格式已經是JPEG規格的一部分,但是非常少商業軟體程序(或網頁瀏覽器)支持這種不常使用的JPEG格式。
❸ 在網頁中,伺服器端生成的驗證碼圖片有什麼要求,比如字體,顏色,圖片大小,干擾線等等
一.常見的驗證碼
1,四位數字,隨機的一數字字元串,最原始的驗證碼,驗證作用幾乎為零。
2,CSDN網站用戶登錄用的是GIF格式,目前常用的隨機數字圖片驗證碼。圖片上的字元比較中規中矩,驗證作用比上一個好。沒有基本圖形圖像學知識的人,不可破!可惜讀取它的程序,在CSDN使用它的第一天,好像就在論壇里發布了,真是可憐!
3,QQ網站用戶登錄用的是PNG格式,圖片用的隨機數字+隨機大寫英文字母,整個構圖有點張揚,每刷新一次,每個字元還會變位置呢!有時候出來的圖片,人眼都識別不了,厲害啊…
4,MS的hotmail申請時候的是BMP格式, 隨機數字+隨機大寫英文字母+隨機干擾像素+隨機位置。
5,Google的Gmail注冊時候的是JPG格式,隨機英文字母+隨機顏色+隨機位置+隨機長度。
6,其他各大論壇的是XBM格式,內容隨機。
二.驗證碼作用分析
驗證碼起源:因為攻擊者會使用有害程序注冊大量的 Web 服務帳戶(如 Passport)。攻擊者可以使用這些帳戶為其他的用戶製造麻煩,如發送垃圾郵件或通過同時反復登錄多個帳戶來延緩服務的速度。在大多數情況下,自動注冊程序不能識別此圖片中的字元。簡單的說呢,就是防止攻擊者編寫程序,自動注冊,重復登錄暴力破解密碼。驗證碼技術應運而生。
驗證碼實現流程:伺服器端隨機生成驗證碼字元串,保存在內存中,並寫入圖片,發送給瀏覽器端顯示,瀏覽器端輸入驗證碼圖片上字元,然後提交伺服器端,提交的字元和伺服器端保存的該字元比較是否一致。一致就繼續,否則返回提示。攻擊者編寫的robot程序,很難識別驗證碼字元,順利的完成自動注冊,登錄。。。。。。。。。而用戶可以識別填寫,所以這就實現了阻擋攻擊的作用。而圖片的字元識別,就是看圖片上的干擾強度了。就實際的效果來說,驗證碼只是增加攻擊者的難度,而不可能完全的防止。
1,論壇中的驗證碼的作用
目前,不少網站為了防止用戶利用機器人自動注冊、登錄、灌水,都採用了驗證碼技術。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅圖片,圖片里加上一些干擾象素(防止OCR),由用戶肉眼識別其中的驗證碼信息,輸入表單提交網站驗證,驗證成功後才能使用某項功能。
因為你的WEB站有時會碰到客戶機惡意攻擊,其中一種很常見的攻擊手段就是身份欺騙它通過在客戶端腳本寫入一些代碼,然後利用其客戶機在網站論壇反復登陸,或者攻擊者創建一個HTML窗體,其窗體如果包含了你注冊窗體或發帖窗體等相同的欄位,然後利用"http-post"傳輸數據到伺服器,伺服器會執行相應的創建帳戶,提交垃圾數據等操作,如果伺服器本身不能有效驗證並拒絕此非法操作,它會很嚴重耗費其系統資源,降低網站性能甚至使程序崩潰.
而現在流行的判斷訪問WEB程序是合法用戶還是惡意操作的方式,就是採用 一種叫 "字元校驗"的技術.WEB網站像現在的動網論壇,他採用達到方法是為客戶提供一個包含隨即字元串的圖片,用戶必須讀取這些字元串,然後隨 登陸窗體或者發帖窗體等用戶創建的窗體一起提交.因為人的話,可以很容易讀出圖片中的數字,但如果是一段客戶端攻擊代碼,通過一般手段是很難識別驗證碼的.這樣可以確保當前訪問是來自一個人而非機器.
編程實現原理:使用某種動態編程語言,比如PHP,ASP,隨即生成一個隨機數,大多為4位數字和字母,或者是數字和字母的組合,生成以後,用GD庫的支持生成一張根據隨機數來確定的圖片,把隨機數寫入到session中,傳遞到要驗證的頁面,生成的圖片顯示給登陸著,並要求登陸者輸入該隨機數內容,提交到驗證頁面,驗證session的內容和提交的內容是否一致,這就是大致的思路!那麼怎麼編寫驗證碼程序呢,相信Google一下,就有很多現成的代碼。
2,申請QQ號時候驗證碼的作用
如今你要申請一個QQ號,需要輸入很復雜的驗證碼:驗證碼由若干個漢字組成,還加上了花哩唬哨的背景,使得有些漢字實在難以辨認。騰訊這么做,是為了防止有人利用軟體批量獲取QQ號碼----每次提交都要輸入隨機生成的驗證碼,這是軟體難以做到的。
三.圖片驗證碼技術之一:利用Xbm格式圖片
生成驗證代碼的技術有很多,這里只說與我們論壇有關系的這項技術。
x-xbitmap格式的圖片(以下簡稱為Xbm格式)特殊,就在於它並不跟gif,jpg等圖片格式一樣,是一個真正的純2進制圖片格式,而是ascii碼文件--換句話說,它是一個純文本文件,在Windows系統下,系統瀏覽器將它翻譯成圖片來進行顯示。
下面讓我們先來製作一個Xbm圖形格式圖片:
新建一個文本文件,將以下內容復制進去:
#define counter_width 48
#define counter_height 9
static unsigned charcounter_bits[]={ff,3c,7c,3c,70,3c,fe,7c,fe,7c,78,7c,ee,ee,ee,ee,7c,ee,e0,ee,60,ee,74,ee,70,fe,30,
fe,70,fe,38,ec,e0,ec,70,ec,1c,e0,ee,e0,70,e0,fe,7e,fe,7e,70,7e,fe,3c,7c,3c,70,3c}
然後,將此文本文件保存為名字為 test.Xbm的文件。
接下來,讓我們看看如果在ie中打開它,會出現什麼情形??(新開一個ie,然後將test.Xbm直接拖拽到它上面),哈,出現了如下圖一樣的情景,在瀏覽器中出來的,已經不是我們的文本,而是一個黑白的圖片了!
讓我們看看上面那代碼中,每一行的意義:
#define counter_width 48 這里定義了圖片的寬度,一般都設置為8的整數倍,因為我們想顯示的是6個數字,所以就設置成了8*6=48的寬度
#define counter_height 9 這里設置了圖片的高度,可以任意設置,但是注意,這里的數字直接決定了下面的數組中,是用幾組數來表示一個顯示出的數字
static unsigned char counter_bits[]={7c,3c,7c,3c,70,3c,fe,7c,fe,7c,78,7c,ee,ee,ee,ee,7c,ee,e0,ee,60,ee,74,ee,70,fe,30,
fe,70,fe,38,ec,e0,ec,70,ec,1c,e0,ee,e0,70,e0,fe,7e,fe,7e,70,7e,fe,3c,7c,3c,70,3c}
在這里,是圖片用來顯示內容的十六進制的代碼,在這里,是9*6=54個數字來表示,值得一提的是,由於在圖片顯示中,是顯示完了一行後,再顯示第2行,直到最後一行,因此更為准確的描述是6*9顯示,每6個數表示一行(因為我們顯示了6個數字),一共9行(我們的定義中,是採用的高度為9的數組)
正如static unsigned char英文意思為靜態的,無符號的,燒焦的。它只能用來顯示黑白兩種顏色。二進制中的1將來用顯示為黑色,0為白色。
因此,上面的7c、3c這樣的數字,就是一個256位的2進制,其中的1表示黑色,0表示白色,由此繪制出每個數字的圖形。
由於Xbm文件的性質決定,它只能顯示黑/白兩種顏色,而且以數組的方式來表現每個要顯示的圖形,註定了不能用它生成太復雜的圖案。那麼,這樣的圖片格式到底有什麼用呢??當然有的,不少asp論壇/聊天室的登陸驗證碼,就是用這樣的方法在asp中動態生成的。
四.為什麼要打補丁才能正常顯示呢?
在WindowsXP SP2更改後的安全策略中,因為基於安全因素的考慮,默認去掉了對 image/x-xbitmap 圖片格式的支持(該圖片的後綴名為Xbm)。,為什麼微軟在XP的SP2升級包中又要禁止掉它呢??這是因為Xbm的漏洞。
Microsoft Internet EXPlorer和Outlook EXPress在處理WEB頁,HTML郵件,EMAIL附件中畸形Xbm圖象文件會導致崩潰,問題存在於對Xbm文件中的內容缺少檢查,MSIE按照圖象規定的長度和寬度分配內存,攻擊者可以提高超大的長度和寬度數值導致系統消耗內存或者訪問沖突。
換句話說,如果構造一個長寬的尺寸特別大的Xbm文件,很容易導致Windows的內存耗盡,導致程序無響應或者死機。本身來說,這不算一個特別嚴重的漏洞,因為根據安全公告,無法造成溢出,不會存在太大的許可權漏洞。但是由於XP的SP2強調安全性,因此將Xbm功能禁用了。從這點上可以看出,SP2對於安全的確比較重視,將有漏洞的功能基本上都補上或禁用了,作為網路管理員,我對微軟的做法表示支持,因為操作系統默認設置的不安全,常常是造成非專業用戶被攻擊的首要因素。
解禁方法:
由此看出,以後我們訪問某些採用生成Xbm作為驗證代碼的站點的時候,就相當不方便了,如果有必要,可以通過簡單的操作注冊表恢復我們需要的功能。
打開注冊表(開始---運行---regedit----回車),然後進到鍵值[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet EXPlorer\Security]
將blockXbm的值改為00000000(dword,雙位元組),沒有的話新建立一個就可以了。
之後重新IE或者重新啟動機器,則Xbm格式的圖片就可以看到了。
五,Xbm的趨勢
從SP2禁止Xbm的趨勢看出,微軟打算似乎已經開始打算放棄對Xbm格式的支持了。那麼,作為程序編寫者,有必要未雨綢繆,尋找其他生成驗證碼的途徑。在php中,可以通過調用gd庫等方式生成jpg/gif等圖形格式的注冊驗證碼,那麼在asp中有其他的辦法么?
事實上圖片驗證密碼的關鍵是--不能在客戶端留下圖片的真實url,或可對應反推源地址的信息,因此asp可以採用以下2種方式實現支持SP2的圖形驗證碼。
如果是購買的虛擬主機,那麼可以採用將jpg/gif圖片放到資料庫,然後用session傳值的方式,最後利用asp直接從資料庫中輸出圖片,這方法的好處是不需要特別設置伺服器端,壞處則是每次生成驗證圖片時都會需要與資料庫連接,增加了開銷。
❹ 為Android應用添加背景應該使用什麼樣的圖片格式,每個格式的的優勢在哪
原創回答:《轉載前請註明 from 網路知道-smile烏龜的回答》
先說結論;
1. 大的ViewGroup(Rl,FL ,LL,Cl等)布局背景應該設PNG
2. 小的view(Button,Recyclerview子item)的背景應該用WebP格式
3. 類似16*16的表情圖 也應該用WebP,也可考慮PNG
在研究圖片之前,首先搞明白三個問題:
像素點:計算機學科中,圖片由一個一個像素點組成,像素點有兩種ARGB和RGB,A,讀作「alpha」,中文「透明度」的含義。
圖片格式:JPEG 有損壓縮
優點 :壓縮過程中損失像素少(為什麼要壓縮?後文會說)
缺點:有損耗壓縮會使原始圖片數據質量下降(像素點變少了)
PNG無損壓縮
優點:更優化的網路傳輸顯示
(PNG圖像在瀏覽器上採用流式瀏覽,即使經過交錯處理的圖像會在完全下載之前提供瀏覽者一個基本的圖像內容,然後再逐漸清晰起來。它允許連續讀出和寫入圖像數據,這個特性很適合於在通信過程中顯示和生成圖像)
支持透明效果
體積小適合網路傳輸,請求服務端的圖片,節省流量
WebP 谷歌(google)開發的一種旨在加快圖片載入速度的圖片格式
優點:「在質量相同的情況下,WebP格式圖像的體積要比JPEG格式圖像小40%」
「WebP
的優勢體現在它具有更優的圖像數據壓縮演算法,能帶來更小的圖片體積,而且擁有肉眼識別無差異的圖像質量;同時具備了無損和有損的壓縮模式、Alpha
透明以及動畫的特性,在向JPEG 和 PNG 上的轉化效果都非常優秀、穩定和統一」
WebP應用比較優秀的:騰訊旗下 QQ空間客戶端,QQ客戶端,微信客戶端等
WebP圖片常用轉換工具:智圖,iSparta等
圖片壓縮:
以Android 為例,任何展示圖片的View控制項,載入圖片的時候,都需要為圖片申請內存,通常圖片越大,申請的內存越大,Android系統限制了每個App的運行內存,一般為32MB-200M左右,為了優化App性能,必須對圖片進行壓縮:壓縮圖片尺寸
通過壓縮圖片尺寸,解決App運行時申請過多內存,被系統殺死的情況。
總結: JPEG是有損壓縮,PNG是無損壓縮,
當UI切了一張匹配實際手機屏幕大小的圖片時 可以使用JPEG(不需要壓縮圖片)
當UI給的圖片過大,需要程序員手動壓縮時,考慮PNG
當UI給的圖片過於離譜,不可理喻,導致APK包過大,用戶反映耗費流量過多時,考慮使用WebP,而且WebP同PNG,JPEG是可以互轉的
(ps:請求自服務端的圖片資源,其實也是UI給的)
參考和補充:
圖片格式,JPEG PNG WebP from網路
http://isux.tencent.com/introction-of-webp.html
http://www.cnblogs.com/xiangism/p/5311314.html
WebP圖片常用轉換工具:智圖,iSparta 等
官方WebP解析庫https://github.com/alexey-pelykh/webp-android-backport
❺ 圖片的格式有哪幾種呀
圖片的格式一般有以下幾種,具體特點如下所示:
1、PNG格式 ,PNG(Portable Network Graphics)是一種新興的網路圖形格式,結合了GIF和JPEG的優點,具有存儲形式豐富的特點。PNG最大色深為48bit,採用無損壓縮方案存儲。著名的Macromedia公司的Fireworks的默認格式就是PNG。
2、GIF格式 ,該圖形格式卻在Internet上被廣泛地應用,原因主要是256種顏色已經較能滿足主頁圖形需要,而且文件較小,適合網路環境傳輸和使用。
3、JPEG格式 ,可以用不同的壓縮比例對這種文件壓縮,其壓縮技術十分先進,對圖像質量影響不大,因此可以用最少的磁碟空間得到較好的圖像質量。由於它優異的性能,所以應用非常廣泛,而在Internet上,它更是主流圖形格式。
4、PCX格式 ,PCX格式是ZSOFT公司在開發圖像處理軟體Paintbrush時開發的一種格式,存儲格式從 1位到24位,它是經過壓縮的格式,佔用磁碟空間較少。由於該格式出現的時間較長,並且具有壓縮及全彩色的能力,所以 PCX格式現在仍是十分流行。
5、PSD格式(Photoshop格式),Adobe公司開發的圖像處理軟體Photoshop中自建的標准文件格式就是PSD格式,在該軟體所支持的各種格式中,PSD格式存取速度比其它格式快很多,功能也很強大。由於 Photoshop軟體越來越廣泛地應用,所以這個格式也逐步流行起來。PSD格式是Photoshop的專用格式,裡面可以存放圖層、通道、遮罩等多種設計草稿。
6、TIFF格式,TIFF格式具有圖形格式復雜、存儲信息多的特點。3DS、3DS MAX中的大量貼圖就是TIFF格式的。TIFF最大色深為32bit,可採用LZW無損壓縮方案存儲。