我想为使用phonegap从相机API中获取的图像添加当前日期时间

时间:2013-08-20 07:53:29

标签: html5 jquery-mobile cordova html5-canvas

我正在为ios / andorid / windows开发一个应用程序,它具有捕获图像并将其保存在我们的应用程序中的功能。 我的图像正在捕获并保存到文件夹并显示在div中。但我想为我拍摄的那张照片添加日期时间。如果在25-08-2013拍摄一张照片,我们就说了。我想在右下角的图片中显示这个日期时间。

我们如何在phonegap中实现这一目标。我听说过一些画布html5功能,但我不知道如何在canvas标签中使用拍摄的图像。

function capturePhoto() {
    navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
      destinationType: destinationType.FILE_URI });
 }

function onFail(message) {
      alert('Failed because: ' + message);
}

function onPhotoDataSuccess(imageData) {
  console.log("Image Property-->");

  var smallImage = document.getElementById('smallImage');

  smallImage.style.display = 'block';

 // smallImage.src = "data:image/jpeg;base64," + imageData;
  smallImage.src = imageData;
}

<div data-role="page">

<div data-role="header" data-theme="b">
    <h1>DATE !T</h1>
</div><!-- /header -->

<div data-role="content">
    <button onclick="capturePhoto();">Capture Photo</button><br>
    <img style="display:none;width:60px;height:60px;" id="smallImage" src="" />
</div><!-- /content -->

<div data-role="footer" data-position="fixed" data-theme="b">
    <h4>Footer</h4>
</div><!-- /footer -->

1 个答案:

答案 0 :(得分:1)

您可以使用此代码使用c#

 FileStream fs = new FileStream(@"c:\myImage.jpg", FileMode.Open, FileAccess.Read);//or .jpg, etc...
        Image image = Image.FromStream(fs);
        fs.Close();

        Bitmap b = new Bitmap(image);
        Graphics graphics = Graphics.FromImage(b);
        var date = Convert.ToString(DateTime.Now);
        graphics.DrawString(date, this.Font, Brushes.Black, image.Width - (date.Length*5), 0);

        b.Save(@"c:\myImage.jpg", image.RawFormat);

        image.Dispose();
        b.Dispose();

如果这个剂量没有帮助通知我搜索其他方法