【问题标题】:Text (date) stamp on photo照片上的文字(日期)戳记
【发布时间】:2012-01-28 14:04:58
【问题描述】:

是否可以合并从相机拍摄的文字和照片? 我想在照片上加盖日期和时间,但在 Google 上找不到任何内容。

【问题讨论】:

  • 如何将时间戳设置为底部??

标签: android date camera photo


【解决方案1】:
  • 使用方法decodeByteArray从您从JPEG图片回调获得的byte[]数组创建一个位图对象
  • 使用您在上面创建的位图创建一个画布对象
  • 在画布对象上使用drawText方法在照片上书写文字。

【讨论】:

    【解决方案2】:

    使用下面的代码来实现你所需要的。

            Bitmap src = BitmapFactory.decodeResource(getResources(), R.drawable.cuty); // the original file is cuty.jpg i added in resources
            Bitmap dest = Bitmap.createBitmap(src.getWidth(), src.getHeight(), Bitmap.Config.ARGB_8888);
    
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String dateTime = sdf.format(Calendar.getInstance().getTime()); // reading local time in the system
    
            Canvas cs = new Canvas(dest);
            Paint tPaint = new Paint();
            tPaint.setTextSize(35);
            tPaint.setColor(Color.BLUE);
            tPaint.setStyle(Style.FILL);
            cs.drawBitmap(src, 0f, 0f, null);
            float height = tPaint.measureText("yY");
            cs.drawText(dateTime, 20f, height+15f, tPaint);
            try {
                dest.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(new File("/sdcard/timeStampedImage.jpg")));
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    

    您必须在清单文件中使用以下权限。

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    

    如果您有任何疑问,请随时提出。我在图片的左上角添加了时间戳,你可以在图片的任意位置更改。

    对于我的设备,访问外部 SD 卡的路径是 /sdcard,其他设备可能会有所不同。有些设备可能有 /mnt/sdcard 可能是用于内部 sd 卡。在使用此代码 sn-p 之前检查一下即可。

    【讨论】:

    • 你好 Yugandhar Babu ..希望你做得很好......我想在视频录制中添加日期和时间戳,当我播放视频显示日期和时间时,就像你上面的图像代码一样......我已经完成了您的图像代码及其工作良好现在我想为视频添加此功能..任何帮助将不胜感激..谢谢..
    • @saurabhtrivedi 抱歉,我无法满足您的要求。现在我忙于安卓移植而不是安卓应用开发。
    • @YugandharBabu ,你有什么视频解决方案吗?
    • 当我加载从相机拍摄的大图像时出现内存不足异常,我也尝试了 android:largeHeap="true" 仍然没有
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-24
    • 2021-06-02
    • 1970-01-01
    • 2014-06-05
    • 2015-11-11
    • 1970-01-01
    相关资源
    最近更新 更多