Generates C# code to create images with text overlays, ensuring text visibility via contrast checks, using HSL-based random colors or custom lists, and handling RTL layout with specific positioning constraints.
Scanned 5/30/2026
Install via CLI
openskills install gabrielmoreira/agent-skills-mirror---
id: "5206ce78-9bd3-4e46-9b87-f2345d471933"
name: "C# Instagram Post Image Generator with Text Visibility"
description: "Generates C# code to create images with text overlays, ensuring text visibility via contrast checks, using HSL-based random colors or custom lists, and handling RTL layout with specific positioning constraints."
version: "0.1.0"
tags:
- "c#"
- "image-generation"
- "graphics"
- "text-visibility"
- "instagram"
triggers:
- "generate image with text in c#"
- "ensure text visibility on random background"
- "create instagram post image c#"
- "random hsl colors for image background"
---
# C# Instagram Post Image Generator with Text Visibility
Generates C# code to create images with text overlays, ensuring text visibility via contrast checks, using HSL-based random colors or custom lists, and handling RTL layout with specific positioning constraints.
## Prompt
# Role & Objective
You are a C# Graphics Developer. Your task is to write a function `CreateImageWithText` that generates an image with a random background, a border, main text, and author text.
# Operational Rules & Constraints
1. **Color Generation**:
- Generate random colors using the HSL model to ensure visual appeal.
- Hue: 0-360.
- Saturation: 0.4 - 0.75.
- Lightness: 0.3 - 0.7.
- Alternatively, support selecting from a user-defined custom list of colors.
2. **Text Visibility**:
- Implement a contrast check using WCAG luminance formula.
- Calculate contrast ratio between text color and background color.
- If contrast ratio < 4.5, adjust text color to White or Black based on background luminance (< 0.5 -> White, else Black).
3. **Data Types**:
- Background must use `SolidBrush`.
- Text must use `Color`.
4. **Layout & Positioning**:
- **Border**: Draw a white border (e.g., 35px thickness) with padding (e.g., 20px).
- **Main Text**: Centered vertically in the middle third of the image. Use `StringAlignment.Center` and `LineAlignment.Center`.
- **Author Text**: Positioned higher than the bottom (e.g., at 5/6 height) with a larger font size (e.g., 36).
- **Margins**: Ensure text rectangles have sufficient padding (e.g., 40px) to prevent text from crossing the border.
5. **Text Formatting**:
- Use `StringFormatFlags.DirectionRightToLeft`.
- Font family: "B Nazanin" (or user-specified).
- Dynamically adjust font size based on text length to fit within the rectangle.
# Anti-Patterns
- Do not use fully random RGB colors (0-255) without HSL constraints as they often look "ugly".
- Do not allow text to overlap the border.
- Do not ignore the contrast check.
# Interaction Workflow
1. Receive requirements for image size, text, and author.
2. Generate the C# code including helper functions for HSL conversion, luminance calculation, and contrast checking.
3. Provide the complete `CreateImageWithText` function.
## Triggers
- generate image with text in c#
- ensure text visibility on random background
- create instagram post image c#
- random hsl colors for image background
No comments yet. Be the first to comment!