FlexiText: Parametric Two-Line Keychain Generator
Welcome to FlexiText, a fully customizable and multi-font parametric keychain generator designed specifically for 3D printing enthusiasts. Whether you need a single name or a two-line combination, this script automatically adjusts to deliver perfect results every time!
What You Can Customize (Parameter Blueprint)
You don't need to open the tool to guess what this script can do. Here is the full list of real-time editing possibilities included in this project:
- Text Inputs (1 or 2 Lines): Type your text in Line 1 and Line 2. Leave Line 2 completely blank if you want a sleek, single-line keychain.
- 8 Curated Font Styles: Switch between different typographical themes via a simple dropdown menu, including: Lily Script One (Elegant Script), Lobster (Retro Script), Anton (Bold Impact), Roboto (Modern Minimalist), Orbitron (Gamer Futuristic), Bungee (Cartoon Pop), Cinzel (Classic Luxury), and Creepster (Horror Theme).
- Text Scaling (text_size): Adjust the font size from 9mm to 14mm. Perfect for shrinking long names (like "Wellington") so the keychain fits comfortably in your pocket.
- Overlap Protection (vertical_spacing): Move the sliders from 5mm up to 12mm to push the second line further down. This prevents thick or tall fonts from colliding, keeping the outline clean.
- Fully Adjustable Ring Location: Fine-tune the keychain ring on the X-axis (-1.5 to 5) and Y-axis (-15 to 15) to merge it perfectly into any text layout, avoiding gaps in complex letters.
- Smart Nozzle Scaling: Choose your printer's nozzle diameter (0.2, 0.4, 0.6, or 0.8mm). The code automatically calculates the base borders and ring wall thickness to ensure perfect perimeter lines.
- Base Border Thickness (target_border): Control the strength of the background plate from 2.8mm up to 4.4mm.
Recommended Print Settings
- Supports: None (Designed to print completely flat on the build plate).
- Infill: 15% to 20% (Grid or Gyroid).
- Color Change (Filament Swap): Set a filament change at layer height 3.2mm (assuming a 0.2mm layer height) to print the solid base in one color (e.g., Black) and the raised letters in another (e.g., Yellow).