Bitmap meter

Meter=Bitmap displays a frame of an image depending on a measure value.

Options

General meter options

All general meter options are valid, except W, H and TransformationMatrix.

Note: The size of the meter is automatically determined by the height of the bitmap image and the number of image frames displayed. Care must be taken to ensure the skin is big enough to hold the meter, using SkinWidth / SkinHeight or a background image meter. DynamicWindowSize will not be effective with this meter.

General image options

All general image options are valid for BitmapImage, except ImageCrop, and ImageRotate.

MeasureName

Name of the measure used to determine the frame(s) to display. There are two kinds of values that can be used:

  • The measure returns a percentual value.

    This can be used to display a single frame from the bitmap image, based on the percentage value.

    Example: If the image contains 5 frames, the first frame is displayed when the percentual measure value is between 0% and 19%, the second frame is shown from 20% to 39% , and so on.

  • The measure returns any integer numeric value equal to or less than 999,999,999.

    This can be used to display the entire numeric value using multiple frames from the bitmap image.

    In this case, you will use BitmapExtend with a value of 1, and set BitmapDigits with a value equal to the greatest number of digits the value can be. This will be used with a BitmapImage that consists of the numbers from 0 to 9, and a BitmapFrames of 10. This will then display the entire number using the appropriate numeric (0-9) frames from the bitmap image.
BitmapImage

Path to the image. The frames in the images can be laid out either horizontally or vertically (the orientation is determined automatically from the height or the width of the image). The size of a single frame is also determined automatically, so no extra space should surround the frames.

If BitmapExtend is not set to 1, the measure being used must return values from 0.0 to 1.0 or must have both MaxValue and MinValue set.

BitmapFrames Default: 1

Number of frames in the image.

BitmapTransitionFrames

The number of transition frames per each actual frame. The transition frames are frames which are displayed when the measure value changes. The same number of transition frames must be used after each regular frame. The TransitionUpdate option in the [Rainmeter] section determines the rate at which the transition frames change during the transition. The total duration of the transition is therefore TransitionUpdate multiplied by BitmapTransitionFrames.

Note: BitmapFrames always defines the total number of frames in the bitmap, including the transition frames.

Example: If the bitmap has 10 values and each transition consists of 4 additional frames, then BitmapFrames should be set to 50 and BitmapTransitionFrames to 4.

BitmapZeroFrame Default: 0

If set to 1, a measured percentual value of zero is included in the calculation of the first frame. Since there are 100 percentage "points" from 0-99%, and 101 from 0-100%, BitmapZeroFrame should be used when measuring from 0-100%, or the meter will overrun the bitmap when the value is at 100%.

BitmapExtend Default: 0

If set to 1 the bitmap is extended to display the whole value.

Example: If you define a bitmap that defines frames from 0 to 9 you can use this to display the measured value as the bitmap numbers.

BitmapDigits Default: 0

Number of digits that are drawn (for BitmapExtend=1). The first frame is used if the value doesn't have as many digits as this defines.

BitmapAlign

Alignment of the bitmap value (for BitmapExtend=1). Valid values are Left, Center, and Right.

BitmapSeparation Default: 0

Positive or negative number used as the separation between digits when BitmapDigits is higher than one.

Example

[Rainmeter]
Update=1000
AccurateText=1
DynamicWindowSize=1
[Metadata]
Name=ExampleMeterBitmap
Author=The Rainmeter Team
Information=Example of the Bitmap meter
License=Creative Commons Attribution-Non-Commercial-Share Alike 3.0
Version=1.0
[MeasureCPU]
Measure=CPU
[MeterCellBack1]
Meter=Image
ImageName=#@#Images\CellBack.png
X=0
Y=0
[MeterCellBack2]
Meter=Image
ImageName=#@#Images\CellBack.png
X=3R
Y=0r
[MeterCellBack3]
Meter=Image
ImageName=#@#Images\CellBack.png
X=3R
Y=0r
[MeterCPU]
Meter=Bitmap
MeasureName=MeasureCPU
X=8
Y=8
BitmapImage=#@#Images\Numbers.png
BitmapFrames=10
BitmapExtend=1
BitmapDigits=3
BitmapSeparation=12
[MeterCellFore1]
Meter=Image
ImageName=#@#Images\CellFore.png
X=0
Y=0
[MeterCellFore2]
Meter=Image
ImageName=#@#Images\CellFore.png
X=3R
Y=0r
[MeterCellFore3]
Meter=Image
ImageName=#@#Images\CellFore.png
X=3R
Y=0r

An example skin demonstrating a Bitmap meter.