Saving a PNG or JPG image to Photos in iOS via PhoneGap

前端 未结 2 1030
眼角桃花
眼角桃花 2021-01-03 13:33

I am new to PhoneGap and would like to know how to save an in-App image to Photos in iOS.

While I was able to use

navigator.camera.getPicture


        
相关标签:
2条回答
  • 2021-01-03 14:17

    Maybe you could try the plugin I wrote for IOS (If you want to save a canvas element to photogallery, you could get the dataURI of the canvas the use the downloadWithUrl method below). Hope it works for you.

    here is the git link: https://github.com/Nomia/ImgDownloader

    Short Example:

    document.addEventListener("deviceready",onDeviceReady);
    
    //google logo url
    url = 'https://www.google.com/images/srpr/logo11w.png';
    
    onDeviceReady = function(){
        cordova.plugins.imgDownloader.downloadWithUrl(url,function(){
            alert("success");
        },function(){
            alert("error");
        });        
    }
    
    //also you can try dataUri like: 1px gif
    //url = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'
    

    you can also save a local file to image gallery use the download method

    0 讨论(0)
  • 2021-01-03 14:36

    I recently came across the following Phonegap plugin for saving Canvas images to Photos in iOS: https://github.com/devgeeks/Canvas2ImagePlugin

    Follow the readme instructions for importing the plugin and then you can use it the following way:

    <html>
        <head>
            <title>Save Image</title>
            <script type="text/javascript" charset="utf-8" src="cordova-2.1.0.js"></script>
            <script type="text/javascript" charset="utf-8" src="../Canvas2Image/Canvas2ImagePlugin.js"></script>
            <script type="text/javascript" charset="utf-8">
    
            var canvas2ImagePlugin; //devgeeks plugin for saving canvas images to photo gallery
    
            function onDeviceReady() {
                 canvas2ImagePlugin = window.plugins.canvas2ImagePlugin;
             }
    
            function savePicture(){
                canvas2ImagePlugin.saveImageDataToLibrary(function(msg){console.log(msg);},function(err){console.log(err);},'mycanvas');
             }
    
            </script>
        </head>
        <body>
            <canvas id="myCanvas" width="500px" height="300px"> <strong>[Your browser can not show this example.]</strong> </canvas>
            <button onclick="savePicture();">Save Photo</button> <br>
        </body>
    </html>
    
    0 讨论(0)
提交回复
热议问题