CAN YOU DOWNLOAD THE PREVIOS
Make a reels script based on these dental health topics for video content
"You've been brushing your teeth your whole life... but are you actually doing it right?"
[On-screen text: STEP 1] Hold your toothbrush at a 45-degree angle to your gums - not flat against your teeth.[On-screen text: STEP 2] Use small circular motions, not back-and-forth scrubbing. Scrubbing wears down enamel over time.[On-screen text: STEP 3] Brush for a full 2 minutes - most people stop at 45 seconds. Set a timer![On-screen text: STEP 4] Don't forget your tongue and the backs of your back teeth - that's where bacteria loves to hide.
"Save this for your next brush session - your teeth will thank you. Drop a tooth emoji in the comments if you learned something new! 🦷"
"Skip flossing because it takes too long? Here's what that's actually costing you."
Your toothbrush only cleans 60% of your tooth surfaces. The other 40%? That's between your teeth - where your brush physically cannot reach.[Cut to graphic] Food and plaque trapped between teeth leads to:
- Cavities between teeth (the most common type!)
- Gum disease
- Bad breath that mouthwash can't fix
The right way to floss: Use 18 inches of floss, wrap it around your middle fingers, and curve it into a C-shape around each tooth. Slide it gently up and down - don't just snap it into your gums.Do it once a day, preferably before bed, so your mouth isn't sitting in bacteria all night.
"It takes 60 seconds. Your gums are worth it. Follow for more dental tips that actually make a difference."
"Three brushing mistakes that dentists see every single day."
[MISTAKE 1 - text overlay] Brushing right after eating. Wait 30 minutes - especially after acidic foods. Your enamel is temporarily softened and brushing can wear it away.[MISTAKE 2 - text overlay] Using a hard-bristle brush. Hard bristles feel more "clean" but they damage gums and enamel. Soft bristle is the dentist-recommended choice.[MISTAKE 3 - text overlay] Keeping your toothbrush too long. Once the bristles are frayed - or after 3 months - it stops cleaning properly. A worn brush does almost nothing.
"Which one were you guilty of? Comment below - no judgment! And follow for weekly tips to keep your smile healthy. 🦷✨"
Find images of proper brushing technique to use in your videos
proper toothbrushing technique diagram infographic free use



| Source | License | Usage |
|---|---|---|
| Freepik/Magnific | Free with attribution | ✅ Good for reels with credit |
| Shutterstock | Paid license | ⚠️ Requires purchase for commercial use |
| Dreamstime | Royalty-free (preview) | ⚠️ Buy for commercial use |
| I Like My Teeth | Free educational use | ✅ Great for non-commercial reels |
CAN YOU MAKE IT IN KANNADA LANGUAGE
"ನೀವು ಜೀವನವಿಡೀ ಹಲ್ಲು ತಿಕ್ಕುತ್ತಿದ್ದೀರಿ... ಆದರೆ ನಿಜವಾಗಿಯೂ ಸರಿಯಾಗಿ ಮಾಡುತ್ತಿದ್ದೀರಾ?"
[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 1] ಟೂತ್ಬ್ರಷ್ ಅನ್ನು ನಿಮ್ಮ ಒಸಡುಗಳಿಗೆ 45 ಡಿಗ್ರಿ ಕೋನದಲ್ಲಿ ಹಿಡಿಯಿರಿ - ಹಲ್ಲುಗಳ ಮೇಲೆ ಚಪ್ಪಟೆಯಾಗಿ ಅಲ್ಲ.[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 2] ಸಣ್ಣ ವೃತ್ತಾಕಾರದ ಚಲನೆಗಳನ್ನು ಬಳಸಿ - ಮುಂದೆ ಹಿಂದೆ ಉಜ್ಜಬೇಡಿ. ಉಜ್ಜುವುದರಿಂದ ಕಾಲಕ್ರಮೇಣ ಎನಾಮಲ್ ಹಾಳಾಗುತ್ತದೆ.[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 3] ಪೂರ್ಣ 2 ನಿಮಿಷ ತಿಕ್ಕಿರಿ - ಹೆಚ್ಚಿನ ಜನರು 45 ಸೆಕೆಂಡ್ನಲ್ಲೇ ನಿಲ್ಲಿಸುತ್ತಾರೆ. ಟೈಮರ್ ಹಾಕಿಕೊಳ್ಳಿ![ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 4] ನಿಮ್ಮ ನಾಲಿಗೆ ಮತ್ತು ಹಿಂದಿನ ಹಲ್ಲುಗಳ ಬೆನ್ನು ಭಾಗವನ್ನು ಮರೆಯಬೇಡಿ - ಅಲ್ಲಿ ಬ್ಯಾಕ್ಟೀರಿಯಾ ಅಡಗಿರುತ್ತದೆ.
"ಮುಂದಿನ ಬಾರಿ ಹಲ್ಲು ತಿಕ್ಕುವಾಗ ಇದನ್ನು ನೆನಪಿಟ್ಟುಕೊಳ್ಳಿ - ನಿಮ್ಮ ಹಲ್ಲುಗಳು ನಿಮಗೆ ಧನ್ಯವಾದ ಹೇಳುತ್ತವೆ. ಹೊಸದು ತಿಳಿದರೆ ಕಾಮೆಂಟ್ನಲ್ಲಿ ಹಲ್ಲಿನ ಎಮೋಜಿ ಹಾಕಿ! 🦷"
"ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಎಂದು ಫ್ಲಾಸ್ ಮಾಡುವುದನ್ನು ಬಿಟ್ಟಿದ್ದೀರಾ? ಅದರಿಂದ ನಿಮಗೆ ಏನು ನಷ್ಟವಾಗುತ್ತಿದೆ ಎಂದು ತಿಳಿಯಿರಿ."
ನಿಮ್ಮ ಟೂತ್ಬ್ರಷ್ ಕೇವಲ 60% ಹಲ್ಲಿನ ಮೇಲ್ಮೈ ಸ್ವಚ್ಛ ಮಾಡುತ್ತದೆ. ಉಳಿದ 40%? ಅದು ಹಲ್ಲುಗಳ ನಡುವೆ ಇರುತ್ತದೆ - ಅಲ್ಲಿಗೆ ಬ್ರಷ್ ತಲುಪಲು ಸಾಧ್ಯವೇ ಇಲ್ಲ.[ಗ್ರಾಫಿಕ್ಗೆ ಕಟ್] ಹಲ್ಲುಗಳ ನಡುವೆ ಸಿಲುಕಿದ ಆಹಾರ ಮತ್ತು ಪ್ಲಾಕ್ನಿಂದ:
- ಹಲ್ಲುಗಳ ನಡುವೆ ಕ್ಯಾವಿಟಿ (ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ವಿಧ!)
- ಒಸಡಿನ ರೋಗ
- ಮೌತ್ವಾಶ್ನಿಂದಲೂ ಹೋಗದ ದುರ್ವಾಸನೆ
ಸರಿಯಾದ ಫ್ಲಾಸ್ ವಿಧಾನ: 18 ಇಂಚು ಫ್ಲಾಸ್ ತೆಗೆದುಕೊಳ್ಳಿ, ನಡುಬೆರಳಿಗೆ ಸುತ್ತಿ, ಪ್ರತಿ ಹಲ್ಲಿನ ಸುತ್ತ C ಆಕಾರದಲ್ಲಿ ಬಾಗಿಸಿ. ಮೆಲ್ಲಗೆ ಮೇಲೆ ಕೆಳಗೆ ಸರಿಸಿ - ಒಸಡಿನೊಳಗೆ ತಳ್ಳಬೇಡಿ.ದಿನಕ್ಕೆ ಒಮ್ಮೆ, ಮೇಲಾಗಿ ರಾತ್ರಿ ಮಲಗುವ ಮೊದಲು ಮಾಡಿ.
"ಕೇವಲ 60 ಸೆಕೆಂಡ್ ಸಾಕು. ನಿಮ್ಮ ಒಸಡುಗಳು ಅದಕ್ಕೆ ಯೋಗ್ಯವಾಗಿವೆ. ಇನ್ನಷ್ಟು ದಂತ ಆರೋಗ್ಯ ಸಲಹೆಗಳಿಗಾಗಿ ಫಾಲೋ ಮಾಡಿ."
"ದಂತ ವೈದ್ಯರು ಪ್ರತಿದಿನ ನೋಡುವ ಮೂರು ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳು ಇವು."
[ತಪ್ಪು 1] ತಿಂದ ತಕ್ಷಣ ಹಲ್ಲು ತಿಕ್ಕುವುದು. 30 ನಿಮಿಷ ಕಾಯಿರಿ - ವಿಶೇಷವಾಗಿ ಹುಳಿ ಆಹಾರದ ನಂತರ. ಎನಾಮಲ್ ತಾತ್ಕಾಲಿಕವಾಗಿ ಮೃದುವಾಗಿರುತ್ತದೆ, ತಿಕ್ಕಿದರೆ ಹಾಳಾಗುತ್ತದೆ.[ತಪ್ಪು 2] ಗಡಸು ಬ್ರಷ್ ಬಳಸುವುದು. ಗಡಸು ಬ್ರಿಸಲ್ಗಳು ಹೆಚ್ಚು "ಸ್ವಚ್ಛ" ಅನ್ನಿಸಿದರೂ ಒಸಡು ಮತ್ತು ಎನಾಮಲ್ ಹಾನಿ ಮಾಡುತ್ತವೆ. ಮೃದು ಬ್ರಿಸಲ್ ಉಪಯೋಗಿಸಿ.[ತಪ್ಪು 3] ಟೂತ್ಬ್ರಷ್ ಅನ್ನು ತುಂಬಾ ದಿನ ಇಟ್ಟುಕೊಳ್ಳುವುದು. ಬ್ರಿಸಲ್ ಬಾಗಿದ ತಕ್ಷಣ ಅಥವಾ 3 ತಿಂಗಳ ನಂತರ ಬದಲಾಯಿಸಿ. ಹಳೆಯ ಬ್ರಷ್ ಸ್ವಚ್ಛ ಮಾಡುವುದೇ ಇಲ್ಲ.
"ಯಾವ ತಪ್ಪು ನಿಮ್ಮಿಂದ ಆಗಿತ್ತು? ಕಾಮೆಂಟ್ನಲ್ಲಿ ಹೇಳಿ! ಪ್ರತಿ ವಾರ ಆರೋಗ್ಯಕರ ಹಲ್ಲಿನ ಸಲಹೆಗಳಿಗಾಗಿ ಫಾಲೋ ಮಾಡಿ. 🦷✨"
Create a PDF document with all 3 Kannada reel scripts
ls /home/daytona/workspace/ 2>/dev/null && fc-list | grep -i kannada | head -10
fc-list | grep -i "kannada\|noto.*kn\|lohit.*kn" | head -10; fc-list | grep -i "noto" | grep -i "sans" | head -5
fc-list | head -30; python3 -c "from reportlab.pdfbase import pdfmetrics; print('reportlab ok')"
mkdir -p /home/daytona/workspace/dental-kannada-pdf && wget -q "https://github.com/googlefonts/noto-fonts/raw/main/hinted/ttf/NotoSansKannada/NotoSansKannada-Regular.ttf" -O /home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Regular.ttf && echo "Font downloaded: $(ls -lh /home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Regular.ttf)"
wget -q "https://github.com/googlefonts/noto-fonts/raw/main/hinted/ttf/NotoSansKannada/NotoSansKannada-Bold.ttf" -O /home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Bold.ttf && echo "Bold font: $(ls -lh /home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Bold.ttf)"
~/dental-kannada-pdf/create_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import ParagraphStyle
from reportlab.lib.units import mm
from reportlab.lib import colors
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, HRFlowable, PageBreak, Table, TableStyle
)
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
# Register Kannada fonts
pdfmetrics.registerFont(TTFont('NotoKannada', '/home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Regular.ttf'))
pdfmetrics.registerFont(TTFont('NotoKannada-Bold', '/home/daytona/workspace/dental-kannada-pdf/NotoSansKannada-Bold.ttf'))
# Colors
TEAL = colors.HexColor('#0E7C7B')
LIGHT_TEAL = colors.HexColor('#E6F4F4')
DARK_GRAY = colors.HexColor('#2C2C2C')
MID_GRAY = colors.HexColor('#555555')
ACCENT = colors.HexColor('#F0A500')
WHITE = colors.white
# Styles
def make_styles():
return {
'cover_title': ParagraphStyle(
'cover_title', fontName='NotoKannada-Bold', fontSize=26,
textColor=WHITE, leading=36, alignment=1, spaceAfter=6
),
'cover_sub': ParagraphStyle(
'cover_sub', fontName='NotoKannada', fontSize=13,
textColor=colors.HexColor('#D4EDEC'), leading=20, alignment=1, spaceAfter=4
),
'reel_number': ParagraphStyle(
'reel_number', fontName='NotoKannada-Bold', fontSize=11,
textColor=WHITE, leading=16, alignment=0
),
'reel_title': ParagraphStyle(
'reel_title', fontName='NotoKannada-Bold', fontSize=16,
textColor=DARK_GRAY, leading=24, spaceAfter=4
),
'section_label': ParagraphStyle(
'section_label', fontName='NotoKannada-Bold', fontSize=10,
textColor=WHITE, leading=14, spaceAfter=2
),
'body': ParagraphStyle(
'body', fontName='NotoKannada', fontSize=11,
textColor=DARK_GRAY, leading=20, spaceAfter=6
),
'body_indent': ParagraphStyle(
'body_indent', fontName='NotoKannada', fontSize=11,
textColor=DARK_GRAY, leading=20, spaceAfter=4, leftIndent=16
),
'step_label': ParagraphStyle(
'step_label', fontName='NotoKannada-Bold', fontSize=11,
textColor=TEAL, leading=18, spaceAfter=2
),
'cta': ParagraphStyle(
'cta', fontName='NotoKannada', fontSize=11,
textColor=MID_GRAY, leading=20, spaceAfter=4
),
'meta': ParagraphStyle(
'meta', fontName='NotoKannada', fontSize=10,
textColor=MID_GRAY, leading=16
),
'footer': ParagraphStyle(
'footer', fontName='NotoKannada', fontSize=9,
textColor=MID_GRAY, leading=14, alignment=1
),
}
def section_box(label_text, content_paragraphs, styles, label_color=TEAL, bg_color=LIGHT_TEAL):
"""Returns a Table that mimics a labelled section box."""
label = Paragraph(label_text, styles['section_label'])
label_table = Table([[label]], colWidths=[160*mm])
label_table.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), label_color),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
('LEFTPADDING', (0,0), (-1,-1), 10),
('RIGHTPADDING', (0,0), (-1,-1), 10),
('ROUNDEDCORNERS', [4, 4, 0, 0]),
]))
content_table = Table([[p] for p in content_paragraphs], colWidths=[160*mm])
content_table.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), bg_color),
('TOPPADDING', (0,0), (-1,-1), 6),
('BOTTOMPADDING', (0,0), (-1,-1), 6),
('LEFTPADDING', (0,0), (-1,-1), 10),
('RIGHTPADDING', (0,0), (-1,-1), 10),
]))
wrapper = Table([[label_table], [content_table]], colWidths=[160*mm])
wrapper.setStyle(TableStyle([
('TOPPADDING', (0,0), (-1,-1), 0),
('BOTTOMPADDING', (0,0), (-1,-1), 0),
('LEFTPADDING', (0,0), (-1,-1), 0),
('RIGHTPADDING', (0,0), (-1,-1), 0),
('BOX', (0,0), (-1,-1), 1, colors.HexColor('#B0D8D7')),
]))
return wrapper
def build_pdf():
output_path = '/home/daytona/workspace/dental-kannada-pdf/Kannada_Dental_Reels_Scripts.pdf'
doc = SimpleDocTemplate(
output_path, pagesize=A4,
topMargin=15*mm, bottomMargin=15*mm,
leftMargin=20*mm, rightMargin=20*mm
)
styles = make_styles()
story = []
# ── COVER PAGE ──────────────────────────────────────────────────────────────
cover_header = Table(
[[Paragraph('🦷 ದಂತ ಆರೋಗ್ಯ ರೀಲ್ಸ್', styles['cover_title'])],
[Paragraph('ಕನ್ನಡ ಸ್ಕ್ರಿಪ್ಟ್ ಸಂಗ್ರಹ', styles['cover_sub'])],
[Paragraph('ಹಲ್ಲು ತಿಕ್ಕುವ ಮತ್ತು ಫ್ಲಾಸ್ ಮಾಡುವ ಸರಿಯಾದ ವಿಧಾನ', styles['cover_sub'])],
[Spacer(1, 8)],
[Paragraph('3 ರೀಲ್ ಸ್ಕ್ರಿಪ್ಟ್ಗಳು | ಸಾಮಾನ್ಯ ಜನರಿಗಾಗಿ | ಶೈಕ್ಷಣಿಕ ವಿಷಯ', styles['cover_sub'])],
],
colWidths=[170*mm]
)
cover_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), TEAL),
('TOPPADDING', (0,0), (-1,-1), 20),
('BOTTOMPADDING', (0,0), (-1,-1), 20),
('LEFTPADDING', (0,0), (-1,-1), 16),
('RIGHTPADDING', (0,0), (-1,-1), 16),
('ROUNDEDCORNERS', [8, 8, 8, 8]),
]))
story.append(cover_header)
story.append(Spacer(1, 10*mm))
# Intro note
intro = Table([[Paragraph(
'ಈ ಮೂರು ರೀಲ್ ಸ್ಕ್ರಿಪ್ಟ್ಗಳು Instagram / YouTube Shorts / TikTok ಗಾಗಿ '
'ತಯಾರಿಸಲಾಗಿದೆ. ಪ್ರತಿ ಸ್ಕ್ರಿಪ್ಟ್ 30-50 ಸೆಕೆಂಡ್ ಅವಧಿಯದ್ದಾಗಿದೆ.',
styles['body']
)]], colWidths=[170*mm])
intro.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), colors.HexColor('#F7FDFC')),
('BOX', (0,0), (-1,-1), 1, colors.HexColor('#B0D8D7')),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
]))
story.append(intro)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════
# REEL 1
# ══════════════════════════════════════════════════════════════════
reel1_header = Table(
[[Paragraph('ರೀಲ್ #1', styles['reel_number']),
Paragraph('⏱ ~45 ಸೆಕೆಂಡ್', styles['reel_number'])]],
colWidths=[85*mm, 85*mm]
)
reel1_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('ROUNDEDCORNERS', [6, 6, 0, 0]),
]))
story.append(reel1_header)
reel1_title_box = Table(
[[Paragraph('"ನೀವು ಇಷ್ಟು ದಿನ ತಪ್ಪಾಗಿ ಹಲ್ಲು ತಿಕ್ಕುತ್ತಿದ್ದೀರಿ"', styles['reel_title'])]],
colWidths=[170*mm]
)
reel1_title_box.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), LIGHT_TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('BOX', (0,0), (-1,-1), 1, colors.HexColor('#B0D8D7')),
]))
story.append(reel1_title_box)
story.append(Spacer(1, 5))
# Hook
story.append(section_box(
'🎯 ಹುಕ್ (0-3 ಸೆ)',
[Paragraph('"ನೀವು ಜೀವನವಿಡೀ ಹಲ್ಲು ತಿಕ್ಕುತ್ತಿದ್ದೀರಿ... ಆದರೆ ನಿಜವಾಗಿಯೂ ಸರಿಯಾಗಿ ಮಾಡುತ್ತಿದ್ದೀರಾ?"', styles['body'])],
styles, label_color=ACCENT, bg_color=colors.HexColor('#FFF8E6')
))
story.append(Spacer(1, 5))
# Body
body1_content = [
Paragraph('[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 1]', styles['step_label']),
Paragraph('ಟೂತ್ಬ್ರಷ್ ಅನ್ನು ಒಸಡುಗಳಿಗೆ 45 ಡಿಗ್ರಿ ಕೋನದಲ್ಲಿ ಹಿಡಿಯಿರಿ - ಹಲ್ಲುಗಳ ಮೇಲೆ ಚಪ್ಪಟೆಯಾಗಿ ಅಲ್ಲ.', styles['body']),
Paragraph('[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 2]', styles['step_label']),
Paragraph('ಸಣ್ಣ ವೃತ್ತಾಕಾರದ ಚಲನೆಗಳನ್ನು ಬಳಸಿ - ಮುಂದೆ ಹಿಂದೆ ಉಜ್ಜಬೇಡಿ. ಉಜ್ಜುವುದರಿಂದ ಎನಾಮಲ್ ಹಾಳಾಗುತ್ತದೆ.', styles['body']),
Paragraph('[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 3]', styles['step_label']),
Paragraph('ಪೂರ್ಣ 2 ನಿಮಿಷ ತಿಕ್ಕಿರಿ - ಹೆಚ್ಚಿನ ಜನರು 45 ಸೆಕೆಂಡ್ನಲ್ಲೇ ನಿಲ್ಲಿಸುತ್ತಾರೆ. ಟೈಮರ್ ಹಾಕಿಕೊಳ್ಳಿ!', styles['body']),
Paragraph('[ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್: ಹಂತ 4]', styles['step_label']),
Paragraph('ನಾಲಿಗೆ ಮತ್ತು ಹಿಂದಿನ ಹಲ್ಲುಗಳ ಬೆನ್ನು ಭಾಗವನ್ನು ಮರೆಯಬೇಡಿ - ಅಲ್ಲಿ ಬ್ಯಾಕ್ಟೀರಿಯಾ ಅಡಗಿರುತ್ತದೆ.', styles['body']),
]
story.append(section_box('📹 ಮುಖ್ಯ ಭಾಗ (3-35 ಸೆ)', body1_content, styles))
story.append(Spacer(1, 5))
# CTA
story.append(section_box(
'📣 CTA (35-45 ಸೆ)',
[Paragraph('"ಮುಂದಿನ ಬಾರಿ ಹಲ್ಲು ತಿಕ್ಕುವಾಗ ಇದನ್ನು ನೆನಪಿಟ್ಟುಕೊಳ್ಳಿ - ನಿಮ್ಮ ಹಲ್ಲುಗಳು ನಿಮಗೆ ಧನ್ಯವಾದ ಹೇಳುತ್ತವೆ. ಹೊಸದು ತಿಳಿದರೆ ಕಾಮೆಂಟ್ನಲ್ಲಿ ಹಲ್ಲಿನ ಎಮೋಜಿ ಹಾಕಿ! 🦷"', styles['cta'])],
styles, label_color=colors.HexColor('#2E7D32'), bg_color=colors.HexColor('#F1F8F1')
))
story.append(Spacer(1, 4))
story.append(Paragraph('📍 ದೃಶ್ಯ ನಿರ್ದೇಶನ: ಬಾತ್ರೂಮ್ ಸೆಟ್ಟಿಂಗ್, ಬ್ರಷ್ ತಂತ್ರದ ಕ್ಲೋಸ್-ಅಪ್, ಆನ್-ಸ್ಕ್ರೀನ್ ಟೆಕ್ಸ್ಟ್ ಪಾಪ್-ಅಪ್ಗಳು, ಹಗುರ ಸಂಗೀತ.', styles['meta']))
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════
# REEL 2
# ══════════════════════════════════════════════════════════════════
reel2_header = Table(
[[Paragraph('ರೀಲ್ #2', styles['reel_number']),
Paragraph('⏱ ~50 ಸೆಕೆಂಡ್', styles['reel_number'])]],
colWidths=[85*mm, 85*mm]
)
reel2_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('ROUNDEDCORNERS', [6, 6, 0, 0]),
]))
story.append(reel2_header)
reel2_title_box = Table(
[[Paragraph('"ಫ್ಲಾಸ್ ಮಾಡಲೇಬೇಕು - ಕಾರಣ ಇಲ್ಲಿದೆ"', styles['reel_title'])]],
colWidths=[170*mm]
)
reel2_title_box.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), LIGHT_TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('BOX', (0,0), (-1,-1), 1, colors.HexColor('#B0D8D7')),
]))
story.append(reel2_title_box)
story.append(Spacer(1, 5))
story.append(section_box(
'🎯 ಹುಕ್ (0-3 ಸೆ)',
[Paragraph('"ಸಮಯ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಎಂದು ಫ್ಲಾಸ್ ಮಾಡುವುದನ್ನು ಬಿಟ್ಟಿದ್ದೀರಾ? ಅದರಿಂದ ನಿಮಗೆ ಏನು ನಷ್ಟವಾಗುತ್ತಿದೆ ಎಂದು ತಿಳಿಯಿರಿ."', styles['body'])],
styles, label_color=ACCENT, bg_color=colors.HexColor('#FFF8E6')
))
story.append(Spacer(1, 5))
body2_content = [
Paragraph('ನಿಮ್ಮ ಟೂತ್ಬ್ರಷ್ ಕೇವಲ 60% ಹಲ್ಲಿನ ಮೇಲ್ಮೈ ಸ್ವಚ್ಛ ಮಾಡುತ್ತದೆ. ಉಳಿದ 40%? ಅದು ಹಲ್ಲುಗಳ ನಡುವೆ ಇರುತ್ತದೆ - ಅಲ್ಲಿಗೆ ಬ್ರಷ್ ತಲುಪಲು ಸಾಧ್ಯವೇ ಇಲ್ಲ.', styles['body']),
Paragraph('[ಗ್ರಾಫಿಕ್ಗೆ ಕಟ್] ಹಲ್ಲುಗಳ ನಡುವೆ ಸಿಲುಕಿದ ಆಹಾರ ಮತ್ತು ಪ್ಲಾಕ್ನಿಂದ:', styles['step_label']),
Paragraph('• ಹಲ್ಲುಗಳ ನಡುವೆ ಕ್ಯಾವಿಟಿ (ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ವಿಧ!)', styles['body_indent']),
Paragraph('• ಒಸಡಿನ ರೋಗ', styles['body_indent']),
Paragraph('• ಮೌತ್ವಾಶ್ನಿಂದಲೂ ಹೋಗದ ದುರ್ವಾಸನೆ', styles['body_indent']),
Paragraph('ಸರಿಯಾದ ಫ್ಲಾಸ್ ವಿಧಾನ:', styles['step_label']),
Paragraph('18 ಇಂಚು ಫ್ಲಾಸ್ ತೆಗೆದುಕೊಳ್ಳಿ, ನಡುಬೆರಳಿಗೆ ಸುತ್ತಿ, ಪ್ರತಿ ಹಲ್ಲಿನ ಸುತ್ತ C ಆಕಾರದಲ್ಲಿ ಬಾಗಿಸಿ. ಮೆಲ್ಲಗೆ ಮೇಲೆ ಕೆಳಗೆ ಸರಿಸಿ - ಒಸಡಿನೊಳಗೆ ತಳ್ಳಬೇಡಿ.', styles['body']),
Paragraph('ದಿನಕ್ಕೆ ಒಮ್ಮೆ, ಮೇಲಾಗಿ ರಾತ್ರಿ ಮಲಗುವ ಮೊದಲು ಮಾಡಿ.', styles['body']),
]
story.append(section_box('📹 ಮುಖ್ಯ ಭಾಗ (3-40 ಸೆ)', body2_content, styles))
story.append(Spacer(1, 5))
story.append(section_box(
'📣 CTA (40-50 ಸೆ)',
[Paragraph('"ಕೇವಲ 60 ಸೆಕೆಂಡ್ ಸಾಕು. ನಿಮ್ಮ ಒಸಡುಗಳು ಅದಕ್ಕೆ ಯೋಗ್ಯವಾಗಿವೆ. ಇನ್ನಷ್ಟು ದಂತ ಆರೋಗ್ಯ ಸಲಹೆಗಳಿಗಾಗಿ ಫಾಲೋ ಮಾಡಿ."', styles['cta'])],
styles, label_color=colors.HexColor('#2E7D32'), bg_color=colors.HexColor('#F1F8F1')
))
story.append(Spacer(1, 4))
story.append(Paragraph('📍 ದೃಶ್ಯ ನಿರ್ದೇಶನ: 60%/40% ಅನಿಮೇಟೆಡ್ ಗ್ರಾಫಿಕ್, ಫ್ಲಾಸಿಂಗ್ ತಂತ್ರದ ಡೆಮೊ, ದಪ್ಪ ಟೆಕ್ಸ್ಟ್ ಓವರ್ಲೇ.', styles['meta']))
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════
# REEL 3
# ══════════════════════════════════════════════════════════════════
reel3_header = Table(
[[Paragraph('ರೀಲ್ #3', styles['reel_number']),
Paragraph('⏱ ~40 ಸೆಕೆಂಡ್', styles['reel_number'])]],
colWidths=[85*mm, 85*mm]
)
reel3_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('ROUNDEDCORNERS', [6, 6, 0, 0]),
]))
story.append(reel3_header)
reel3_title_box = Table(
[[Paragraph('"ಹಲ್ಲು ತಿಕ್ಕುವಾಗ ನೀವು ಮಾಡುವ 3 ತಪ್ಪುಗಳು"', styles['reel_title'])]],
colWidths=[170*mm]
)
reel3_title_box.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), LIGHT_TEAL),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('BOX', (0,0), (-1,-1), 1, colors.HexColor('#B0D8D7')),
]))
story.append(reel3_title_box)
story.append(Spacer(1, 5))
story.append(section_box(
'🎯 ಹುಕ್ (0-3 ಸೆ)',
[Paragraph('"ದಂತ ವೈದ್ಯರು ಪ್ರತಿದಿನ ನೋಡುವ ಮೂರು ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳು ಇವು."', styles['body'])],
styles, label_color=ACCENT, bg_color=colors.HexColor('#FFF8E6')
))
story.append(Spacer(1, 5))
body3_content = [
Paragraph('ತಪ್ಪು 1', styles['step_label']),
Paragraph('ತಿಂದ ತಕ್ಷಣ ಹಲ್ಲು ತಿಕ್ಕುವುದು. 30 ನಿಮಿಷ ಕಾಯಿರಿ - ವಿಶೇಷವಾಗಿ ಹುಳಿ ಆಹಾರದ ನಂತರ. ಎನಾಮಲ್ ತಾತ್ಕಾಲಿಕವಾಗಿ ಮೃದುವಾಗಿರುತ್ತದೆ, ತಿಕ್ಕಿದರೆ ಹಾಳಾಗುತ್ತದೆ.', styles['body']),
Paragraph('ತಪ್ಪು 2', styles['step_label']),
Paragraph('ಗಡಸು ಬ್ರಷ್ ಬಳಸುವುದು. ಗಡಸು ಬ್ರಿಸಲ್ಗಳು ಒಸಡು ಮತ್ತು ಎನಾಮಲ್ ಹಾನಿ ಮಾಡುತ್ತವೆ. ಯಾವಾಗಲೂ ಮೃದು ಬ್ರಿಸಲ್ ಬ್ರಷ್ ಉಪಯೋಗಿಸಿ.', styles['body']),
Paragraph('ತಪ್ಪು 3', styles['step_label']),
Paragraph('ಟೂತ್ಬ್ರಷ್ ಅನ್ನು ತುಂಬಾ ದಿನ ಇಟ್ಟುಕೊಳ್ಳುವುದು. ಬ್ರಿಸಲ್ ಬಾಗಿದ ತಕ್ಷಣ ಅಥವಾ 3 ತಿಂಗಳ ನಂತರ ಬದಲಾಯಿಸಿ. ಹಳೆಯ ಬ್ರಷ್ ಏನನ್ನೂ ಸ್ವಚ್ಛ ಮಾಡುವುದಿಲ್ಲ.', styles['body']),
]
story.append(section_box('📹 ಮುಖ್ಯ ಭಾಗ (3-33 ಸೆ)', body3_content, styles))
story.append(Spacer(1, 5))
story.append(section_box(
'📣 CTA (33-40 ಸೆ)',
[Paragraph('"ಯಾವ ತಪ್ಪು ನಿಮ್ಮಿಂದ ಆಗಿತ್ತು? ಕಾಮೆಂಟ್ನಲ್ಲಿ ಹೇಳಿ! ಪ್ರತಿ ವಾರ ಆರೋಗ್ಯಕರ ಹಲ್ಲಿನ ಸಲಹೆಗಳಿಗಾಗಿ ಫಾಲೋ ಮಾಡಿ. 🦷✨"', styles['cta'])],
styles, label_color=colors.HexColor('#2E7D32'), bg_color=colors.HexColor('#F1F8F1')
))
story.append(Spacer(1, 4))
story.append(Paragraph('📍 ದೃಶ್ಯ ನಿರ್ದೇಶನ: ತ್ವರಿತ ಕಟ್ಗಳು, ದಪ್ಪ "ತಪ್ಪು" ಟೆಕ್ಸ್ಟ್ ಓವರ್ಲೇ, ಲವಲವಿಕೆಯ ಆಡಿಯೊ.', styles['meta']))
# Footer note
story.append(Spacer(1, 10*mm))
story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor('#B0D8D7')))
story.append(Spacer(1, 3))
story.append(Paragraph('ದಂತ ಆರೋಗ್ಯ ರೀಲ್ ಸ್ಕ್ರಿಪ್ಟ್ಸ್ | ಕನ್ನಡ ಆವೃತ್ತಿ | ಸಾಮಾನ್ಯ ಜನರಿಗಾಗಿ', styles['footer']))
doc.build(story)
print(f"PDF created: {output_path}")
if __name__ == '__main__':
build_pdf()
python3 /home/daytona/workspace/dental-kannada-pdf/create_pdf.py 2>&1
ls -lh /home/daytona/workspace/dental-kannada-pdf/Kannada_Dental_Reels_Scripts.pdf
Kannada Dental Reels Scripts
PDF Document · PDF
| Page | Content |
|---|---|
| 1 | Cover page with title in Kannada + intro note |
| 2 | ರೀಲ್ #1 - "ನೀವು ಇಷ್ಟು ದಿನ ತಪ್ಪಾಗಿ ಹಲ್ಲು ತಿಕ್ಕುತ್ತಿದ್ದೀರಿ" |
| 3 | ರೀಲ್ #2 - "ಫ್ಲಾಸ್ ಮಾಡಲೇಬೇಕು - ಕಾರಣ ಇಲ್ಲಿದೆ" |
| 4 | ರೀಲ್ #3 - "ಹಲ್ಲು ತಿಕ್ಕುವಾಗ ನೀವು ಮಾಡುವ 3 ತಪ್ಪುಗಳು" |