FixedSize is the exact opposite of that. When the UIRoot is set to this setting, your screen will always remain the same size as far as NGUI is concerned, regardless of the actual screen size. This means that if a 300x200 widget takes 25% of your screen with the resolution of 1920x1080, it will still take 25% of the screen when you drop your resolution to 1280x720. If you don't want to worry about how your UI will look at different screen sizes and you don't care much about making it as crisp as possible, choose this setting. Don't forget to set the Manual Height setting when choosing this option.
FixedSizeOnMobile setting is a combination of the two. It will behave as if the setting was "PixelPerfect" on desktop builds, and it will act as if the size was "FixedSize" when targeting mobile platforms.
If you don't choose the Fixed Size option, don't forget to set the Minimum and Maximum Height values. These values are used to keep your virtual screen size within "sane" values. So for example if your UI is set to Pixel Perfect mode, and the Minimum Height is set to 720, then some player tries to run your application with the resolution of 800 by 600, the UI will behave as if the setting was "Fixed Size" with the Manual Height set to 720.
Shrink Portrait UI option is designed to adjust your UI's size when the screen is in Portrait mode. It's similar to a height-based adjustment, but it will take the width into consideration as well.
PixelPerfect : 拡大縮小しない(automatic = true 相当)
FixedSize : 画面の高さに合わせる(automatic = false 相当)
FixedSizeOnMobile : iOS, Android のときは FixedSize、それ以外では PixelPerfect