2016-11-25 179 views
1

我正在創建一個皮膚(可能是一組皮膚),我打算在某個時候發佈皮膚。在我工作時,遇到了旋轉圖像儀的問題。它的大小對於一個尺度變量是動態的。沒有調整大小的旋轉

圖像在旋轉時被調整大小。我相信這是由於圖像的對角線不適合儀表的框架。雖然我不確定我能如何解決這個問題。

以下是像測量器的代碼:

[icon0] 
Meter=Image 
[email protected]\images\gear.png 
W=(50*#scale#) 
H=(50*#scale#) 
X=(5*#scale#) 
Y=(5*#scale#) 
ImageRotate=90 

當「ImageRotate」的值被改變爲90至45的圖標按比例縮小。

我試圖看看一個創建了我想要的效果的例子,但我無法弄清楚。我還查找了一個論壇,或者在「Rainmeter手冊」中找到一些有用的信息。我發現了一些關於ScaleMargin的東西,但它似乎沒有我想要的效果。

非常感謝您提供的任何幫助。

回答

0

我想你需要計算自己旋轉後最大可能的W/H。如果您希望它圍繞原點旋轉,可能也會更改X/Y

有一個示例here。它使用Rotator meter

望着那個例子中,你的代碼將是這樣的:

[icon0] 
Meter=Image 
[email protected]\images\gear.png 
W=(SQRT((50*#scale#) ** 2 + (50*#scale#) ** 2)) 
H=(SQRT((50*#scale#) ** 2 + (50*#scale#) ** 2)) 
X=(5*#scale#) 
Y=(5*#scale#) 
ImageRotate=90 

沒有測試過自己,您可能需要爲DynamicVariables=1#scale# S,你可能需要計算XY,如果你想圍繞圖像的中心旋轉。不知道你想要什麼,但我會留給你。

編輯: 您可能還需要DynamicWindowSize=1[Rainmeter]部分以及。否則,它會在旋轉後裁剪圖像,如果它不符合皮膚的初始大小。

+0

謝謝你的幫助。雖然這段代碼無法正常工作,但卻讓我發現了一些可以做我想做的事情。 [MeterRotate] 儀表=肩 MeasureName = MeasureRotate ImageName =#@#圖像\ gear.png X =([MeterBG:W/2) Y =([MeterBG:H/2) OFFSETX =(#ImageW#/ 2) OffsetY =(#ImageH#/ 2) TransformationMatrix =(1 * #Scaler#); 0; 0;(1 * #Scaler#);((1-#Scaler#)* [#CURRENTSECTION#:X]);((1-#Scaler#)* [#CURRENTSECTION#:Y]) DynamicVariables = 1 –