Constructor and Description |
---|
Builder(Bitmap bitmap)
Construct a new
Palette.Builder using a source Bitmap |
Builder(List<Palette.Swatch> swatches)
Construct a new
Palette.Builder using a list of Palette.Swatch instances. |
Modifier and Type | Method and Description |
---|---|
Palette.Builder |
addFilter(Palette.Filter filter)
Add a filter to be able to have fine grained control over which colors are
allowed in the resulting palette.
|
Palette.Builder |
addTarget(Target target)
Add a target profile to be generated in the palette.
|
Palette.Builder |
clearFilters()
Clear all added filters.
|
Palette.Builder |
clearRegion()
Clear any previously region set via
setRegion(int, int, int, int) . |
Palette.Builder |
clearTargets()
Clear all added targets.
|
Palette |
generate()
Generate and return the
Palette synchronously. |
AsyncTask<Bitmap,Void,Palette> |
generate(Palette.PaletteAsyncListener listener)
Generate the
Palette asynchronously. |
Palette.Builder |
maximumColorCount(int colors)
Set the maximum number of colors to use in the quantization step when using a
Bitmap as the source. |
Palette.Builder |
resizeBitmapArea(int area)
Set the resize value when using a
Bitmap as the source. |
Palette.Builder |
resizeBitmapSize(int maxDimension)
Deprecated.
Using
resizeBitmapArea(int) is preferred since it can handle
abnormal aspect ratios more gracefully. |
Palette.Builder |
setRegion(int left,
int top,
int right,
int bottom)
Set a region of the bitmap to be used exclusively when calculating the palette.
|
public Builder(Bitmap bitmap)
Palette.Builder
using a source Bitmap
public Builder(List<Palette.Swatch> swatches)
Palette.Builder
using a list of Palette.Swatch
instances.
Typically only used for testing.@NonNull public Palette.Builder maximumColorCount(int colors)
Bitmap
as the source.
Good values for depend on the source image type. For landscapes, good values are in the range 10-16. For images which are largely made up of people's faces then this value should be increased to ~24.
@NonNull @Deprecated public Palette.Builder resizeBitmapSize(int maxDimension)
resizeBitmapArea(int)
is preferred since it can handle
abnormal aspect ratios more gracefully.Bitmap
as the source.
If the bitmap's largest dimension is greater than the value specified, then the bitmap
will be resized so that it's largest dimension matches maxDimension
. If the
bitmap is smaller or equal, the original is used as-is.maxDimension
- the number of pixels that the max dimension should be scaled down to,
or any value <= 0 to disable resizing.@NonNull public Palette.Builder resizeBitmapArea(int area)
Bitmap
as the source.
If the bitmap's area is greater than the value specified, then the bitmap
will be resized so that it's area matches area
. If the
bitmap is smaller or equal, the original is used as-is.
This value has a large effect on the processing time. The larger the resized image is, the greater time it will take to generate the palette. The smaller the image is, the more detail is lost in the resulting image and thus less precision for color selection.
area
- the number of pixels that the intermediary scaled down Bitmap should cover,
or any value <= 0 to disable resizing.@NonNull public Palette.Builder clearFilters()
Palette
.@NonNull public Palette.Builder addFilter(Palette.Filter filter)
filter
- filter to add.@NonNull public Palette.Builder setRegion(int left, int top, int right, int bottom)
This only works when the original input is a Bitmap
.
left
- The left side of the rectangle used for the region.top
- The top of the rectangle used for the region.right
- The right side of the rectangle used for the region.bottom
- The bottom of the rectangle used for the region.@NonNull public Palette.Builder clearRegion()
setRegion(int, int, int, int)
.@NonNull public Palette.Builder addTarget(@NonNull Target target)
You can retrieve the result via Palette.getSwatchForTarget(Target)
.
@NonNull public Palette.Builder clearTargets()
Palette
.@NonNull public AsyncTask<Bitmap,Void,Palette> generate(Palette.PaletteAsyncListener listener)
Palette
asynchronously. The provided listener's
Palette.PaletteAsyncListener.onGenerated(android.support.v7.graphics.Palette)
method will be called with the palette when
generated.