Hi @imadullakhan ,
This is pretty simple requirement and you can easily achieve this in a single component.
You can follow the below steps.
1. Create a component which has dropdown to choose image or text.
2 Based on dropdown selection it's respective place holder can appear, say when you choose image, placeholder to drop an image, alt text box etc and when you choose text a simple text box or richtext.
3. You can use OOTB column control to divide the layout 5O% (you can choose option available in column control)
4. Add a custom component created(step 1)inside column control. Considering 50-50 layout. Add it twice. Left and right side.
5. Choose image on left side of component and text on right side of component or vise versa. You can achieve image-image, image-text, text-image, text-text any of this combination.