介绍
本篇文章为大家展示了Android开发中如何实现一个图片中叠加文字功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
效果图:
<强>功能:强>
1。用户自由输入内容,可手动换行,并且行满也会自动换行。
2。可拖动改变图片中文本位置(文字不会超出图片区域)。
3。点击“生成图片”按钮之后,生成一张带有文字的图片文件。
代码不多,直接全部贴上了:
<强>活动:强>
/* * *将文字写在图片中(截图方式),支持拖动文字。你们,br/比; *说明:很明显,截图方式会降低图片的质量。如果需要保持图片质量可以使用帆布的方式,将文字直接绘制在图片之上(不过,使用此方式要实现文字拖动较为复杂)。 */公开课MainActivity延伸AppCompatActivity {//图片组件 私人ImageView ImageView;//位于图片中的文本组件 私人TextView tvInImage;//图片和文本的父组件 私人观点containerView;//父组件的尺寸 私人imageWidth浮动、imageHeight imagePositionX imagePositionY; @Override 保护空白>公共类实用程序{//计算inSampleSize值,压缩图片 公共静态int calculateInSampleSize (BitmapFactory。选择选项,int reqWidth, int reqHeight) {//原始图像的高度和宽度 最后一个int高度=options.outHeight; 最后一个int宽度=options.outWidth; int inSampleSize=1; 如果(高度比;reqHeight | |宽比;reqWidth) { 最后一个int halfHeight=身高/2; 最后一个int半宽度=宽/2;//计算最大inSampleSize值是2的幂,让两者//高度和宽度大于请求的高度和宽度。 在((halfHeight/inSampleSize)比;reqHeight,,(半角/inSampleSize)比;reqWidth) { inSampleSize *=2; } } 返回inSampleSize; } }
<>强布局文件:强>
& lt;及# 63;xml version=?.0”;编码=皍tf-8", # 63;比; http://schemas.android.com/apk/res/android" & lt; LinearLayout xmlns: android=?; android: layout_width=癿atch_parent" android: layout_height=癿atch_parent" android:取向=皏ertical" android:填充=?0 dp"祝辞 & lt;使用 android: id=癅 + id/writeText_img_rl" android: layout_width=皐rap_content" android: layout_height=皐rap_content" android: layout_gravity=癱enter_horizontal"比; & lt; ImageView android: id=癅 + id/writeText_img" android: layout_width=皐rap_content" android: layout_height=皐rap_content" android: maxHeight=?60 dp" android: adjustViewBounds=皌rue" android: contentDescription=癅null"/比; & lt; TextView android: id=癅 + id/writeText_image_tv" android: layout_width=皐rap_content" android: layout_height=皐rap_content" android:可见性=癷nvisible" android: layout_centerInParent=皌rue" android:背景=? 79652 a" android:点击=皌rue" android:填充=? dp" 输入textColor=癮ndroid: @android:颜色/white" android: textSize=?5 sp"/比; & lt;/RelativeLayout> EditText & lt; android: id=癅 + id/writeText_et" android: layout_width=癿atch_parent" android: layout_height=皐rap_content" android: layout_marginTop=? dp" android:提示=疤砑颖缸ⅰ?/比; & lt;按钮 android: layout_width=皐rap_content" android: layout_height=皐rap_content" android: onClick=癱onfirm" android:文本=吧赏计?/比; & lt;/LinearLayout>
上述内容就是Android开发中如何实现一个图片中叠加文字功能,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。