Moon Phase Text?

So far, I’ve been able to find a moon math formula that only displays Waxing or Waning. At minimum, I’d like to add New and Full.

Even better, I’d like: Waxing Cres, First Quarter (or Waxing ¼), Waxing Gibb, Full, Waning Gibb, Last Quarter (or Waning ¾), Waning Cres, New

Percent visible would also be nice but not as important as the words.

My watch face does have the functioning 8 moon phase images — by the way, is there a way to have more than 8 images? Thin waxing and thin waning crescents would be nice additions to the basic 8.

Sorry I don’t know who to credit (@mikeoday), but the formula I’m currently using (that only displays Waxing or Waning) is here (could this be amended?):


Here’s the watch I’m working on:
(Chris Everett - ChrisEverett03 v2 - watch face for Apple Watch, Samsung Gear S3, Huawei Watch, and more - Facer)

Thanks in advance for any help!

Sorry I do know the maths but im very rust with it but if you want a really easy way of acheiving this you could just use the moon phase option and change the gfx to righting that way you can also controll the size a bit better.

1 Like

Hey Chris

You can have as many moon phase images as you want if you don’t use the moon phase widget but instead create your own using normal image elements and different opacity expression. So, if you want 16 images, then firstly find or generate the images and place these in different image elements in Creator. You would then set the opacity for each element as follows …

This expression:


Returns a number in the range 0…1 with:
0 new moon
0.5 full moon
0.99999 back to new moon

You can use intermediate values for part phases, eg.

Suppose you want 16 images, then you divide 1 by 16 to get a 0.0625 steps size to use in the opacity field for your images

Image 1 opacity: $expressionAbove<0.0625?100:0$

Image 2 opacity: $expressionAbove>=0.0625&&expressionAbove<0.125?100:0$

Image 16 opacity: $expressionAbove<0.9375?100:0$

You can do the same thing with text expressions for the phases: have one element per label and set the opacity as above.


1 Like

Mmm, what I said above does not nicely line up with the regular phase descriptions.

With 16 images, new moon would not be < 0.0625, it would be
< 0.0625/2 or >= (1-0.0625/2)

So, if image 1 is for the new moon:

Image 1 opacity: $moonPhase<(0.0625/2)||moonPhase>=(1-0.0625/2)?100:0$

Image n opacity: $moonPhase>=(((n-2)+0.5)*0.0625)&&moonPhase<(((n-1)+0.5)*0.0625)?100:0$

where you would substitute a number between 2 and 16 for “n”, and
the following formula for “moonPhase”



1 Like

Down towards the bottom of this post Modified set of images for Moon Phase, Weather & Battery Icon’s I have posted some pictures of Moon Phase Text Labels. They are white on a white page so just right click above the visible text and click “open image in new tab” from the right click menu and save the pictures. Then just put in a second moon phase and replace all the moon pictures with text pictures and it will work without all the math. :grin:


Hello all!

Thank you for your responses. Each of them was very helpful. In the end, I just took the moon phases artwork I had already created and then added the text into the artwork. It works because I used the same fonts and size that I use in the rest of the watch face.

I really appreciate all the input!

Regards, Chris

Here’s the link to the final (?) watchface. Inspector mode is ON.

1 Like

Looks good!

1 Like