SimpleImageJava 圖片處理類庫
SimpleImage是阿里巴巴的一個(gè)Java圖片處理的類庫,可以實(shí)現(xiàn)圖片縮略、水印等處理。
SimpleImage中的ImageRender是圖片處理的基類,它是一個(gè)抽象類,我們看到,該類中定義了一個(gè)抽象方法render(),同時(shí)持有一個(gè)對(duì)ImageRender類的引用。
ReadRedner可以理解成一個(gè)組件,不是一個(gè)裝飾者,因?yàn)镽eadRender是所有渲染操作的第一步。
其他的子類DrawTextRender(水印處理),ScaleRender(縮略處理),WriterRender(輸出)都是裝飾者。
拿ScaleRender為例子,看一下它的render()類的實(shí)現(xiàn)。紅色區(qū)域的內(nèi)容,是上一層包裝的實(shí)現(xiàn)調(diào)方法render()的調(diào)用,之后的操作是ScaleRender需要關(guān)注的圖片縮略處理。
客戶端的調(diào)用如下所示。ReadRender需要引入一個(gè)輸入流,ScaleRender包裹ReadRender,WriteRender包裹ScaleRender,最后調(diào)用最外層的render()方法,處理圖像處理,層層進(jìn)入,
首先ReadRender讀取圖片數(shù)據(jù),ScaleRender進(jìn)行圖片縮略,WriteReneder將處理之后的圖片數(shù)據(jù)寫入輸出流中,完成一系列操作。
評(píng)論
圖片
表情
