Skip to contents

bm_outline() returns a bitmap that is just the “outline” of another bitmap.

Usage

bm_outline(x, value, bg)

# S3 method for class 'bm_bitmap'
bm_outline(x, value = 1L, bg = 0L)

# S3 method for class 'bm_list'
bm_outline(x, ...)

# S3 method for class 'bm_pixmap'
bm_outline(x, value = col2hex("black"), bg = col2hex("transparent"))

# S3 method for class '`magick-image`'
bm_outline(x, value = "black", bg = "transparent")

# S3 method for class 'nativeRaster'
bm_outline(x, value = col2int("black"), bg = col2int("transparent"))

# S3 method for class 'raster'
bm_outline(x, value = "black", bg = "transparent")

Arguments

x

Either a bm_bitmap(), bm_font(), bm_list(), "magick-image", "nativeRaster", bm_pixmap(), or "raster" object.

value

Bitmap “color” value for the outline.

bg

Bitmap “background” value.

...

Additional arguments to be passed to or from methods.

Value

Depending on x either a bm_bitmap(), bm_font(), bm_list(), magick-image, "nativeRaster", bm_pixmap(), or raster object.

Examples

square <- bm_bitmap(matrix(1L, nrow = 16L, ncol = 16L))
square_outline <- bm_outline(square)
print(square_outline)
#> ████████████████
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> ████████████████

if (require(grid) && capabilities("png")) {
  circle <- as_bm_bitmap(circleGrob(), width=16, height=16)
  circle_outline <- bm_outline(circle)
  print(circle_outline)
}
#> ░░░░░██████░░░░░
#> ░░░██░░░░░░██░░░
#> ░░█░░░░░░░░░░█░░
#> ░█░░░░░░░░░░░░█░
#> ░█░░░░░░░░░░░░█░
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> █░░░░░░░░░░░░░░█
#> ░█░░░░░░░░░░░░█░
#> ░█░░░░░░░░░░░░█░
#> ░░█░░░░░░░░░░█░░
#> ░░░██░░░░░░██░░░
#> ░░░░░██████░░░░░

corn <- farming_crops_16x16()$corn$portrait
corn_outline <- bm_outline(corn, "magenta")
if (cli::is_utf8_output() && cli::num_ansi_colors() >= 256L) {
  print(corn_outline, bg = "white")
}
#>                 
#>                 
#>      ██  ██     
#>       ██      
#>               
#>               
#>               
#>               
#>               
#>              
#>  ███          
#>               
#>               
#>         ████    
#>                 
#>