import os import sys # Add parent directory to path to import shared modules sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) from visual_qc_apps.flask_app_template import FlaskAppTemplate class ImageResolutionApp(FlaskAppTemplate): """ Image Resolution Check """ def __init__(self): # Define the hardcoded prompt prompt = """You are performing a visual quality-control check on a design to verify the resolution of images used. Your task is to determine whether the images in the design have appropriate resolution for the intended medium. RESOLUTION STANDARDS: 1. For print designs: Images should be 300 DPI (dots per inch) 2. For digital/display designs: Images should be 72 DPI (dots per inch) STEPS TO EVALUATE: 1. First, determine if this is a print or digital design based on context clues or metadata. 2. Look for any image resolution information in the screenshot, such as: a. Image properties or info panel showing resolution b. Document properties showing resolution c. Any visible DPI/PPI values 3. If resolution information is visible, check if it meets the appropriate standard: - For print: 300 DPI or higher - For digital: 72-150 DPI is sufficient 4. If no resolution information is visible, state that "Image resolution could not be verified from the screenshot." 5. If low-resolution images are detected in a print design, this is a critical fail. YOUR OUTPUT: • State whether the design appears to be for print or digital (or if this can't be determined) • State whether resolution information was visible in the screenshot • If visible, state whether the image resolution "passes" or "fails" the check • If it fails, provide specific recommendations • Include a JSON code block with these fields: { "design_medium": "Print" or "Digital" or "Unknown", "resolution_info_visible": true or false, "detected_resolution": "300 DPI" or "72 DPI" or other specific value or "Unknown", "resolution_check": "Pass" or "Fail" or "Not applicable", "recommendations": ["List specific recommendations if applicable, else an empty array"] }""" # Initialize the Flask app with the prompt super().__init__(__name__, prompt) # Run the app if executed directly if __name__ == "__main__": app = ImageResolutionApp() app.run(debug=True)