0
我需要在圖像上編寫文本並將其保存爲jpg格式。我必須將圖像壓縮到80%質量以減少文件大小。圖像本身看起來不錯,但其上的文字看起來不太吸引人。Android Canvas - 以80%的質量壓縮圖像,但保留覆蓋文本100%
有沒有辦法將圖像部分縮小到80,但在合併時將文本部分保留爲100?提前致謝。
bitmap = BitmapFactory.decodeFile(Story.imagesPath.get(position));
newBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), config);
Canvas canvas = new Canvas(newBitmap);
canvas.drawBitmap(bitmap, 0, 0, null);
Paint bgPaint=new Paint();
bgPaint.setColor(bgColor);
Paint paintText = new Paint(Paint.ANTI_ALIAS_FLAG);
canvas.drawText(text, width/2, text_bottom, paintText);
File newFile = new File(dir, java.util.UUID.randomUUID() + ".jpg");
FileOutputStream fileOutputStream = new FileOutputStream(newFile);
bm.compress(Bitmap.CompressFormat.JPEG, 80, fileOutputStream);
感謝您的快速回復。不能有任何解決方法來實現這一目標嗎?將它們分別以不同的質量保存並以100%的質量再次合併可能有效嗎? –
你可以。你會以這種方式獲得很少的收益,增加很多複雜性。除非你有其他原因,否則我不會這樣做。 –
非常感謝。質量保持在80%,但增加了位圖維度。這增加了文本質量,但仍然處於良好的文件大小。 –