Here is a simple .rmskin that demonstrates.
Note, ANY Image option on the meter borks the image. ImageTint, ImageAlpha, ImageRotate, ImageFlip, any of them.
IconImage_1.0.rmskin
1.jpg
Code: Select all
[Rainmeter]
Update=1000
DynamicWindowSize=1
AccurateText=1
[Variables]
[MeterImage1]
Meter=Image
ImageName=#@#Rainmeter.ico
W=128
H=128
AntiAlias=1
[MeterImage2]
Meter=Image
ImageName=#@#Rainmeter.ico
X=5R
W=128
H=128
ImageTint=173,247,186,255
AntiAlias=1
That icon has 48, 32, 24 and 16 pixel RGBA formats included.
When you load it as an image, the W and H "resize" that you specify plays a role. If you don't size the meter at all, it will use the smallest format in the .ico file. If you size the image, it then looks like it is picking the size "closest" to the requested size that is in the .ico file, and sizing that to the W and H.
However, if you add any modifying option to the meter, then that breaks down, and it just always uses the smallest format from the file, and literally "stretches" it to the defined W and H. A 16 pixel image stretched to 128 pixels is always going to be a bucket of fail.
If I remove all the formats except the 48 X 48 version from the .ico file, then it works as expected:
2.jpg
Code: Select all
[Rainmeter]
Update=1000
DynamicWindowSize=1
AccurateText=1
[Variables]
[MeterImage1]
Meter=Image
ImageName=#@#Rainmeter.ico
W=128
H=128
AntiAlias=1
[MeterImage2]
Meter=Image
ImageName=#@#Rainmeter.ico
X=5R
W=128
H=128
ImageTint=173,247,186,255
AntiAlias=1
[MeterImage3]
Meter=Image
ImageName=#@#Rainmeter2.ico
X=5R
W=128
H=128
ImageTint=173,247,186,255
AntiAlias=1
As Brian said, this may well be an issue with the standard image loading capabilities of GDI+ (the rendering engine Rainmeter still uses for Image meters) and there may not be much we can do about it until we convert our image functionality to D2D. I'm sure he will take a run at it however.