Matt-Joshua Tan
Create your own vision board in Pygame! Use your imagination and Stable Diffusion to create a sweet little poster. Save it and hang it up on your wall!
- Add your own text with customizable color, size, and font
- Add locally AI-generated images
- Change the background color
- Move, remove, or resize text and images if you change your mind
- Save your vision board as an image to print out and put on your wall!
- Text class (as sprite) holds text in vision board as objects
- Image class (as sprite) holds images in vision board as objects
- Stable Diffusion class to generate images locally (rather than take images from online via API)
- pygame, pygame_gui, pygame_menu
- copy, os
- Pillow (PIL)
- diffusers, torch, and dependencies of the two (for Stable Diffusion class)
Step | Procedure | Expected Results |
---|---|---|
1: Enter the vision board creator | Click the start menu | A GUI should appear with 3 main sections: the Edit Panel, a Tips panel, and a "Save as Image" button. |
2: Adding Text | Click 'Add Text' | The Edit Panel and Save as Image button will be disabled, and a Color Picker and an Add Text window will open. |
3: Choosing Text Color | Select a color in the Color Picker and press OK | The color will be saved for the text. |
4: Customizing Text | Slide to select text size, type text, and choose a font in the dropdown, then press Submit | A second window will show up that says "Click to place object" |
5: Placing Text | Click anywhere on the screen | The complete text will appear with the chosen text, color, font, size and location. |
6: Adding Image | Click 'Add Image' | The Edit Panel and Save as Image button will be disabled, and a single window "Generate AI Image" appears. |
7: Creating Image | Type your prompt and press Submit | The "Click to place object" window will show up. |
8: Placing Image | Click anywhere on the screen | Stable Diffusion will generate an image with your prompt (can take a while), then your image appears as a square at the given location. |
9: Removing Text and Image | Right click on an existing text or image | Any text or image at the location clicked will be deleted. |
10: Dragging Text and Image | Left click on an existing text or image | Any text or image will be moved around with your mouse until you release your left click. |
11: Resizing Text and Image | Click on an existing text or image and press the up/down key | Any text or image at the location clicked will be scaled up or down. |
12: Changing the Background Color | Click 'Change BG' | A Background Color Picker will appear. |
13: Choosing a Background Color | Choose a color in the Background Color Picker and press OK | The background will change to the given color. |
14: Saving the Board State | Press Z | Your text, images, and background color will be saved. |
15: Loading the Board State | (Preferably after modifying the board again) Press C | Your saved board will be reloaded. |
16: Saving Board as Image | Press "Save as Image" in bottom right corner. | The image will be saved as a png in the "etc" folder of the program. |
17: Music Player | Press 'M' | The music will be muted if playing, or unmuted if not playing. |