% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/ee_utils.R
\name{ee_utils_gif_save}
\alias{ee_utils_gif_save}
\title{Write a GIF}
\usage{
ee_utils_gif_save(
  image,
  path = NULL,
  format = NULL,
  quality = NULL,
  depth = NULL,
  density = NULL,
  comment = NULL,
  flatten = FALSE
)
}
\arguments{
\item{image}{magick image object returned by \link[magick:editing]{image_read}.}

\item{path}{path a file, url, or raster object or bitmap array.}

\item{format}{output format such as \code{"png"}, \code{"jpeg"}, \code{"gif"}, \code{"rgb"} or \code{"rgba"}.}

\item{quality}{number between 0 and 100 for jpeg quality. Defaults to 75.}

\item{depth}{color depth (either 8 or 16).}

\item{density}{resolution to render pdf or svg.}

\item{comment}{text string added to the image metadata for supported formats.}

\item{flatten}{should image be flattened before writing? This also replaces
transparency with background color.}
}
\description{
Write a magick-image object as a GIF file using magick package. This
function is a wrapper around \link[magick:editing]{image_write}.
}
\examples{
\dontrun{
library(rgee)

ee_Initialize()

col <- ee$ImageCollection("JRC/GSW1_1/YearlyHistory")$map(function(img) {
  year <- img$date()$get("year")
  yearImg <- img$gte(2)$multiply(year)
  despeckle <- yearImg$connectedPixelCount(15, TRUE)$eq(15)
  yearImg$updateMask(despeckle)$selfMask()$set("year", year)
})

appendReverse <- function(col) col$merge(col$sort('year', FALSE))

# -----------------------------------
# 1 Basic Animation - Ucayali Peru
# -----------------------------------

bgColor = "FFFFFF" # Assign white to background pixels.
riverColor = "0D0887" # Assign blue to river pixels.

## 1.1 Create the dataset
annualCol = col$map(function(img) {
  img$unmask(0)$
    visualize(min = 0, max = 1, palette = c(bgColor, riverColor))$
    set("year", img$get("year"))
})
basicAnimation <- appendReverse(annualCol)


## 1.2 Set video arguments
aoi <- ee$Geometry$Rectangle(-74.327, -10.087, -73.931, -9.327)
videoArgs = list(
  dimensions = 600, # Max dimension (pixels), min dimension is proportionally scaled.
  region = aoi,
  framesPerSecond = 10
)

## 1.2 Download, display and save the GIF!
animation <- ee_utils_gif_creator(basicAnimation, videoArgs, mode = "wb")
get_years <- basicAnimation$aggregate_array("year")$getInfo()
animation \%>\%
  ee_utils_gif_annotate("Ucayali, Peru") \%>\%
  ee_utils_gif_annotate(get_years, size = 15, location = "+90+40",
                        boxcolor = "#FFFFFF") \%>\%
  ee_utils_gif_annotate("created using {magick} + {rgee}",
                        size = 15, font = "sans",location = "+70+20") ->
  animation_wtxt
animation_wtxt
ee_utils_gif_save(animation_wtxt, path = "raster_as_ee.gif")
}
}
\seealso{
Other GIF functions: 
\code{\link{ee_utils_gif_annotate}()},
\code{\link{ee_utils_gif_creator}()}
}
\author{
Jeroen Ooms
}
\concept{GIF functions}
