I'm using PaintCode to generate a stylekit for my xamarin.ios app. I have a simple logo that I pasted into PaintCode from illustrator. Everything looks fine, I have a frame and the generated draw method takes a rect.
At one point I had it resizing in my storyboard but it doesn't maintain the aspect ratio so obviously the logo looked wrong depending on the size of the UIView.
How can I add variables/expressions to paintcode so that the generated code automatically maintains the aspect ratio when the UIView is resized?
Thanks.
To maintain the ratio of the height and width whenever you resize a shape, enable the constrain proportions option. While Constrain Proportions is enabled, when you resize the shape, it will won't stretch the shape, but keep the height and width in the shape's original proportions.
When scaling your image, it's crucial to maintain the ratio of width to height, known as aspect ratio, so it doesn't end up stretched or warped. If you need a specific width and height, you may need a mixture of resizing and cropping to get the desired result.
This is possible with Variables. Try creating two Variables like this:
100
.width / 2
. This would maintain a ratio of 2:1, change as you need.Then attach these two to your Frame object on Width and Height attributes. After that, the generated method will take only one numeric parameter – the Width
:
- (void)drawMyCanvasWithWidth: (CGFloat)width;
Should look like on this image:
Then just pass your desired width and the height will be calculated automatically.
It would also be possible to maintain CGRect
parameter of the method and to find fitting rectangle using Variables. I’ll add that if you ask.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With