from reportlab.lib.pagesizes import letter
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib import colors
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
# Register fonts supporting Cyrillic
pdfmetrics.registerFont(TTFont('NotoSans', '/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf'))
pdfmetrics.registerFont(TTFont('NotoSans-Bold', '/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf'))
# Setup document
doc = SimpleDocTemplate("komarovsky_enuresis_method.pdf", pagesize=letter,
rightMargin=45, leftMargin=45, topMargin=45, bottomMargin=45)
styles = getSampleStyleSheet()
# Define Custom Styles
title_style = ParagraphStyle(
'DocTitle',
parent=styles['Heading1'],
fontName='NotoSans-Bold',
fontSize=18,
leading=24,
alignment=1, # Center
textColor=colors.HexColor('#1A73E8'),
spaceAfter=15
)
h1_style = ParagraphStyle(
'SectionH1',
parent=styles['Heading2'],
fontName='NotoSans-Bold',
fontSize=14,
leading=18,
textColor=colors.HexColor('#0D47A1'),
spaceBefore=14,
spaceAfter=8
)
h2_style = ParagraphStyle(
'SectionH2',
parent=styles['Heading3'],
fontName='NotoSans-Bold',
fontSize=11,
leading=15,
textColor=colors.HexColor('#202124'),
spaceBefore=10,
spaceAfter=4
)
body_style = ParagraphStyle(
'BodyCustom',
parent=styles['Normal'],
fontName='NotoSans',
fontSize=10,
leading=14,
textColor=colors.HexColor('#3C4043'),
spaceAfter=8
)
bullet_style = ParagraphStyle(
'BulletCustom',
parent=styles['Normal'],
fontName='NotoSans',
fontSize=10,
leading=14,
textColor=colors.HexColor('#3C4043'),
leftIndent=15,
firstLineIndent=-10,
spaceAfter=5
)
blockquote_style = ParagraphStyle(
'BlockQuoteCustom',
parent=styles['Normal'],
fontName='NotoSans',
fontSize=9.5,
leading=13.5,
textColor=colors.HexColor('#155724'),
backColor=colors.HexColor('#E2F0D9'),
borderColor=colors.HexColor('#388E3C'),
borderWidth=1,
borderPadding=8,
spaceBefore=10,
spaceAfter=10
)
story = []
# Title
story.append(Paragraph("Метод доктора Комаровского при энурезе:
Почему энурезный будильник — спасение для родителей", title_style))
story.append(Spacer(1, 10))
# Intro
story.append(Paragraph("Ночное недержание мочи (энурез) — проблема, которая изматывает родителей гораздо сильнее, чем самого ребенка. Мокрые простыни, бесконечная стирка и чувство вины часто толкают мам и пап на крайности: от лечения сомнительными травками до жестких наказаний.", body_style))
story.append(Paragraph("Известный педиатр Доктор Евгений Комаровский призывает родителей выдохнуть и подойти к вопросу с позиции доказательной медицины. Главный посыл его методики: энурез до 5 лет — это норма, а после 5 лет — временная незрелость нервной системы. И лучшее, что придумала современная медицина для борьбы с этой незрелостью — энурезный (мочевой) будильник.", body_style))
# Section 1
story.append(Paragraph("Философия Комаровского: Почему ребенок не виноват?", h1_style))
story.append(Paragraph("Прежде чем приступать к лечению, нужно понять физиологию процесса. Ночной энурез чаще всего связан с тремя факторами:", body_style))
story.append(Paragraph("• Слишком крепкий сон: Мозг ребенка спит настолько глубоко, что сигнал от наполненного мочевого пузыря просто не может пробиться через это торможение.", bullet_style))
story.append(Paragraph("• Недостаток ночного вазопрессина: Это гормон, который в норме снижает выработку мочи в ночные часы.", bullet_style))
story.append(Paragraph("• Медленное созревание нервных связей: Связь между мочевым пузырем и корой головного мозга еще просто не наладилась.", bullet_style))
story.append(Paragraph("Важно: Ребенок писается во сне не специально. Он не ленится и не пытается вас разозлить. Его мозг в этот момент спит. Поэтому любые наказания, стыд или упреки лишь усугубляют стресс и отдаляют выздоровление.", blockquote_style))
# Section 2
story.append(Paragraph("Главный акцент метода: Энурезный будильник", h1_style))
story.append(Paragraph("Доктор Комаровский скептически относится к большинству лекарств «от энуреза» (ноотропы, успокоительные) из-за их недоказанной эффективности. Вместо таблеток международная педиатрическая практика и доктор Комаровский рекомендуют энурезный будильник (зәр сезгіш датчик) как средство №1 с эффективностью более 80%.", body_style))
story.append(Paragraph("Как устроен и работает прибор?", h2_style))
story.append(Paragraph("Это миниатюрный гаджет, состоящий из двух частей:", body_style))
story.append(Paragraph("• Сверхчувствительный датчик: Крепится на нижнее белье ребенка (трусики) или закладывается в специальный вкладыш.", bullet_style))
story.append(Paragraph("• Блок оповещения: Крепится на пижаму в районе плеча или надевается на руку как браслет. Он издает громкий звук, вибрирует или мигает.", bullet_style))
story.append(Paragraph("Принцип действия прост: Как только на датчик попадает первая микрокапля влаги, электрическая цепь замыкается, и будильник мгновенно срабатывает.", body_style))
story.append(Paragraph("В чем терапевтический эффект?", h2_style))
story.append(Paragraph("Многие родители путают энурезный будильник с обычным и спрашивают: «Зачем прибор, если я могу сама заводить будильник на 2 часа ночи и высаживать ребенка?»", body_style))
story.append(Paragraph("Комаровский объясняет принципиальную разницу:", body_style))
story.append(Paragraph("• Когда высаживает мама: Вы будите ребенка в случайное время. Его мозг спит, выделительный рефлекс не связывается с пробуждением. Вы просто помогаете простыням остаться сухими, но не лечите энурез.", bullet_style))
story.append(Paragraph("• Когда работает энурезный будильник: Сигнал срабатывает строго в момент начала мочеиспускания. Мозг ребенка экстренно просыпается именно тогда, когда пузырь полон. В этот момент в центральной нервной системе формируется новая, прочная нейронная связь: «Сигнал от пузыря = Пробуждение».", bullet_style))
story.append(Paragraph("Через несколько недель или месяцев регулярного использования прибора ребенок начинает просыпаться сам, за секунду до того, как сработает будильник. Рефлекс сформирован!", body_style))
# Section 3
story.append(Paragraph("Пошаговый алгоритм использования по Комаровскому", h1_style))
story.append(Paragraph("Чтобы метод сработал, родителям нужно набраться терпения (курс обычно занимает от 1 до 3 месяцев) и действовать по правилам:", body_style))
story.append(Paragraph("1. Психологический настрой: Объясните ребенку, что будильник — это его «помощник» и секретный гаджет, который поможет поймать «капельки-беглецы». Ребенок должен хотеть им пользоваться.", bullet_style))
story.append(Paragraph("2. Вечерний ритуал: Перед сном обязательно сходите в туалет. Закрепите датчик на сухие трусики.", bullet_style))
story.append(Paragraph("3. Реакция на сигнал: В первые недели ребенок может не просыпаться от звука сам (помним про крепкий сон). Задача родителей — прибежать на звук, разбудить ребенка до полного сознания, чтобы он сам выключил прибор и пошел дописывать в туалет.", bullet_style))
story.append(Paragraph("4. Постоянство: Прибор нужно использовать каждую ночь, без перерывов.", bullet_style))
# Section 4
story.append(Paragraph("Поддерживающая терапия: Что еще нужно делать?", h1_style))
story.append(Paragraph("Один только будильник сработает быстрее, если вы поможете организму ребенка правильным режимом. Комаровский рекомендует:", body_style))
story.append(Paragraph("• Перераспределение жидкости: Около 70-80% суточной нормы воды ребенок должен выпивать до 18:00. За 2-3 часа до сна питье ограничивается (пару глотков при жажде — можно, стакан чая или сока — нельзя).", bullet_style))
story.append(Paragraph("• Исключение триггеров: Никаких газировок, арбузов, кефира и соленых продуктов на ночь.", bullet_style))
story.append(Paragraph("• «Метод календаря» для мотивации: Заведите красивый календарь. За каждую сухую ночь ребенок сам наклеивает туда яркую наклейку-солнышко. За мокрую ночь — ничего не ставьте (никакого негатива). Соберите 5-7 солнышек подряд — подарите ребенку небольшой, но желанный подарок.", bullet_style))
# Section 5
story.append(Paragraph("Чего делать категорически нельзя?", h1_style))
story.append(Paragraph("⛔ Ругать и стыдить. (Это гарантированно превратит физиологическую незрелость в тяжелый психологический невроз).", bullet_style))
story.append(Paragraph("⛔ Использовать подгузники после 5 лет на постоянной основе. Подгузник дарит ощущение комфорта в воде, и у мозга ребенка вообще исчезает мотивация контролировать процесс.", bullet_style))
story.append(Paragraph("⛔ Ограничивать воду в течение всего дня. Обезвоживание приведет к тому, что моча станет концентрированной, будет раздражать стенки пузыря, и он начнет сокращаться еще чаще.", bullet_style))
# Build PDF
doc.build(story)
print("PDF created successfully as 'komarovsky_enuresis_method.pdf'")