ill give matter can u give 1 slide based on that
Why bioactivity and marginal adaptation matter “Successful perforation repair depends on two key properties: bioactive surface changes and marginal adaptation. Bioactivity promotes apatite-like mineral deposition and tissue regeneration, while good adaptation prevents bacterial leakage and reinfection.” Overall effect of the storage environment “The central finding was that the surrounding environment significantly influenced both the surface characteristics and material–dentin adaptation of the calcium silicate materials. The response differed in blood, acidic pH, and HBSS.” Effect of blood contamination “Blood exposure showed no detectable interfacial gaps in either material. SEM showed globular precipitates, suggesting that calcium ions released from the cement may interact with phosphate ions in plasma and promote mineralisation. This agrees with Ustun et al., but contrasts with Oloomi et al. and Milani et al., who reported that blood proteins and pH changes may interfere with hydration and delay apatite formation.” Effect of acidic pH — the most important discussion point “Butyric acid at pH 5.4–5.6 was the most detrimental condition. It increased interfacial gaps and adversely affected the surface characteristics of both materials. Low pH may disrupt hydration and reduce material stability. This agrees with previous studies reporting reduced bond strength and altered material properties under acidic conditions.” Why EndoSeal MTA performed better in acid “Under acidic conditions, EndoSeal MTA showed a smaller interfacial gap and a significantly higher Ca/P ratio than MTA. The authors attributed this to the greater acid stability of zirconium oxide in EndoSeal MTA, whereas bismuth oxide in conventional MTA may dissociate in low-pH conditions, increasing porosity and structural instability.” Effect of HBSS on bioactivity “HBSS promoted globular or flower-like apatite-related deposits, especially in EndoSeal MTA. Calcium ions released from the material interacted with phosphate ions in HBSS, promoting nucleation and biomineralisation. Although gaps were present, they were significantly smaller than those in the acidic group.” Self-sealing phenomenon “Previous studies suggest that prolonged exposure to HBSS may reduce interfacial voids because continuous mineral deposition gradually fills the interface. This may improve the long-term marginal seal.” Meaning of the Ca/P ratio “The Ca/P ratio was used as an indicator of apatite-like mineral formation. A ratio approaching 1.67 is consistent with an apatite-like calcium phosphate phase. The decrease in surface silicon, calcium, and phosphorus may indicate that the underlying calcium silicate surface became covered by an accumulating calcium phosphate layer.” Clinical relevance “Clinically, an acidic and inflamed perforation site may compromise the performance of calcium silicate repair materials. EndoSeal MTA may show better resistance under acidic conditions, but this does not directly prove superior clinical healing.”
mkdir -p /tmp/workspace/perforation-slide && ls /tmp/workspace/perforation-slide/
~/perforation-slide/create_slide.py
from pptx import Presentation
from pptx.util import Inches, Pt, Emu
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
from pptx.oxml.ns import qn
from lxml import etree
from io import BytesIO
# ── Colours ──────────────────────────────────────────────────────────────────
DARK_BLUE = RGBColor(0x0D, 0x2F, 0x5C) # header / accent
MID_BLUE = RGBColor(0x1A, 0x5E, 0x9A) # sub-header / card titles
LIGHT_BLUE = RGBColor(0xD6, 0xE8, 0xF7) # card backgrounds
ACID_RED = RGBColor(0xC0, 0x39, 0x2B) # acid section accent
BLOOD_BROWN = RGBColor(0x8B, 0x1A, 0x1A) # blood section accent
HBSS_GREEN = RGBColor(0x1E, 0x7A, 0x4A) # HBSS section accent
LIGHT_GREY = RGBColor(0xF4, 0xF6, 0xF9) # slide background
WHITE = RGBColor(0xFF, 0xFF, 0xFF)
BLACK = RGBColor(0x1A, 0x1A, 0x1A)
GOLD = RGBColor(0xE8, 0x9C, 0x15) # clinical note
def add_filled_rect(slide, x, y, w, h, fill_rgb, alpha=None):
shape = slide.shapes.add_shape(
1, # MSO_SHAPE_TYPE.RECTANGLE
Inches(x), Inches(y), Inches(w), Inches(h)
)
shape.line.fill.background()
shape.fill.solid()
shape.fill.fore_color.rgb = fill_rgb
return shape
def add_textbox(slide, x, y, w, h, text, font_name="Calibri", font_size=11,
bold=False, color=BLACK, align=PP_ALIGN.LEFT,
word_wrap=True, italic=False):
tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h))
tf = tb.text_frame
tf.word_wrap = word_wrap
tf.margin_left = Inches(0.05)
tf.margin_right = Inches(0.05)
tf.margin_top = Inches(0.03)
tf.margin_bottom = Inches(0.03)
p = tf.paragraphs[0]
p.alignment = align
run = p.add_run()
run.text = text
run.font.name = font_name
run.font.size = Pt(font_size)
run.font.bold = bold
run.font.italic = italic
run.font.color.rgb = color
return tb
def add_bullet_textbox(slide, x, y, w, h, items, font_name="Calibri",
font_size=10, color=BLACK, bullet_color=None):
"""items = list of strings, each becomes a bullet paragraph."""
tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h))
tf = tb.text_frame
tf.word_wrap = True
tf.margin_left = Inches(0.08)
tf.margin_right = Inches(0.05)
tf.margin_top = Inches(0.03)
tf.margin_bottom = Inches(0.03)
for i, item in enumerate(items):
if i == 0:
p = tf.paragraphs[0]
else:
p = tf.add_paragraph()
p.space_before = Pt(2)
run = p.add_run()
run.text = f"\u2022 {item}"
run.font.name = font_name
run.font.size = Pt(font_size)
run.font.color.rgb = color
return tb
# ── Presentation setup ───────────────────────────────────────────────────────
prs = Presentation()
prs.slide_width = Inches(13.333)
prs.slide_height = Inches(7.5)
blank = prs.slide_layouts[6]
slide = prs.slides.add_slide(blank)
# ── Background ───────────────────────────────────────────────────────────────
add_filled_rect(slide, 0, 0, 13.333, 7.5, LIGHT_GREY)
# ── Top header bar ───────────────────────────────────────────────────────────
add_filled_rect(slide, 0, 0, 13.333, 1.05, DARK_BLUE)
add_textbox(slide, 0.25, 0.08, 12.5, 0.55,
"Discussion: Effect of Storage Environment on Calcium Silicate Materials",
font_name="Calibri", font_size=20, bold=True,
color=WHITE, align=PP_ALIGN.LEFT)
add_textbox(slide, 0.25, 0.62, 12.5, 0.35,
"Perforation Repair | Bioactivity · Marginal Adaptation · Clinical Implications",
font_name="Calibri", font_size=11, bold=False,
color=RGBColor(0xB0, 0xCC, 0xF0), align=PP_ALIGN.LEFT)
# ── Thin accent line under header ────────────────────────────────────────────
add_filled_rect(slide, 0, 1.05, 13.333, 0.04, GOLD)
# ═══════════════════════════════════════════════════════════════════════════
# COLUMN LAYOUT (3 environment cards + 1 right panel)
# Left 3 cards: x = 0.18 / 4.52 / 8.86 width = 4.1
# Right thin panel will be part of card 3 extended
# ═══════════════════════════════════════════════════════════════════════════
CARD_Y = 1.15
CARD_H = 4.80
CARD_W = 4.10
GAP = 0.18
# ── CARD 1: Why It Matters / Key Concepts ────────────────────────────────────
c1x = 0.18
add_filled_rect(slide, c1x, CARD_Y, CARD_W, CARD_H, DARK_BLUE)
# card inner fill
add_filled_rect(slide, c1x+0.04, CARD_Y+0.42, CARD_W-0.08, CARD_H-0.46, WHITE)
add_textbox(slide, c1x+0.04, CARD_Y+0.04, CARD_W-0.08, 0.38,
"KEY CONCEPTS",
font_size=12, bold=True, color=WHITE, align=PP_ALIGN.CENTER)
# Bioactivity sub-block
add_filled_rect(slide, c1x+0.10, CARD_Y+0.52, CARD_W-0.20, 0.28, LIGHT_BLUE)
add_textbox(slide, c1x+0.12, CARD_Y+0.53, CARD_W-0.24, 0.26,
"BIOACTIVITY", font_size=9.5, bold=True, color=MID_BLUE)
add_bullet_textbox(slide, c1x+0.10, CARD_Y+0.83, CARD_W-0.20, 0.75,
["Promotes apatite-like mineral deposition",
"Drives tissue regeneration",
"Ca/P ratio → 1.67 = hydroxyapatite-like phase"],
font_size=9, color=BLACK)
# Marginal adaptation sub-block
add_filled_rect(slide, c1x+0.10, CARD_Y+1.65, CARD_W-0.20, 0.28, LIGHT_BLUE)
add_textbox(slide, c1x+0.12, CARD_Y+1.66, CARD_W-0.24, 0.26,
"MARGINAL ADAPTATION", font_size=9.5, bold=True, color=MID_BLUE)
add_bullet_textbox(slide, c1x+0.10, CARD_Y+1.96, CARD_W-0.20, 0.55,
["Prevents bacterial leakage & reinfection",
"Interfacial gap size = key measure"],
font_size=9, color=BLACK)
# Central finding
add_filled_rect(slide, c1x+0.10, CARD_Y+2.58, CARD_W-0.20, 0.28, GOLD)
add_textbox(slide, c1x+0.12, CARD_Y+2.59, CARD_W-0.24, 0.26,
"CENTRAL FINDING", font_size=9.5, bold=True, color=DARK_BLUE)
add_bullet_textbox(slide, c1x+0.10, CARD_Y+2.89, CARD_W-0.20, 0.85,
["Storage environment significantly influenced both surface characteristics and material-dentin adaptation",
"Blood · Acidic pH · HBSS each produced distinct responses"],
font_size=9, color=BLACK)
# ── CARD 2: Blood & HBSS ─────────────────────────────────────────────────────
c2x = c1x + CARD_W + GAP
add_filled_rect(slide, c2x, CARD_Y, CARD_W, CARD_H, BLOOD_BROWN)
add_filled_rect(slide, c2x+0.04, CARD_Y+0.42, CARD_W-0.08, CARD_H-0.46, WHITE)
add_textbox(slide, c2x+0.04, CARD_Y+0.04, CARD_W-0.08, 0.38,
"BLOOD & HBSS ENVIRONMENTS",
font_size=12, bold=True, color=WHITE, align=PP_ALIGN.CENTER)
# Blood
add_filled_rect(slide, c2x+0.10, CARD_Y+0.52, CARD_W-0.20, 0.28,
RGBColor(0xF9, 0xD5, 0xD5))
add_textbox(slide, c2x+0.12, CARD_Y+0.53, CARD_W-0.24, 0.26,
"BLOOD CONTAMINATION", font_size=9.5, bold=True, color=BLOOD_BROWN)
add_bullet_textbox(slide, c2x+0.10, CARD_Y+0.83, CARD_W-0.20, 1.0,
["No detectable interfacial gaps (SEM)",
"Globular precipitates observed — Ca²⁺ from cement interacts with plasma phosphate → mineralisation",
"Agrees with Ustun et al.; contrasts Oloomi & Milani (blood proteins may delay apatite)"],
font_size=9, color=BLACK)
# HBSS
add_filled_rect(slide, c2x+0.10, CARD_Y+1.92, CARD_W-0.20, 0.28,
RGBColor(0xC8, 0xE6, 0xD4))
add_textbox(slide, c2x+0.12, CARD_Y+1.93, CARD_W-0.24, 0.26,
"HBSS ENVIRONMENT", font_size=9.5, bold=True, color=HBSS_GREEN)
add_bullet_textbox(slide, c2x+0.10, CARD_Y+2.23, CARD_W-0.20, 1.1,
["Globular / flower-like apatite deposits — especially EndoSeal MTA",
"Ca²⁺ + HBSS phosphate → nucleation & biomineralisation",
"Gaps present but significantly smaller than acid group"],
font_size=9, color=BLACK)
# Self-sealing
add_filled_rect(slide, c2x+0.10, CARD_Y+3.40, CARD_W-0.20, 0.28,
RGBColor(0xC8, 0xE6, 0xD4))
add_textbox(slide, c2x+0.12, CARD_Y+3.41, CARD_W-0.24, 0.26,
"SELF-SEALING PHENOMENON", font_size=9.5, bold=True, color=HBSS_GREEN)
add_bullet_textbox(slide, c2x+0.10, CARD_Y+3.72, CARD_W-0.20, 0.60,
["Prolonged HBSS: continuous mineral deposition fills interfacial voids → improved long-term seal"],
font_size=9, color=BLACK)
# ── CARD 3: Acidic pH & EndoSeal advantage ───────────────────────────────────
c3x = c2x + CARD_W + GAP
add_filled_rect(slide, c3x, CARD_Y, CARD_W, CARD_H, ACID_RED)
add_filled_rect(slide, c3x+0.04, CARD_Y+0.42, CARD_W-0.08, CARD_H-0.46, WHITE)
add_textbox(slide, c3x+0.04, CARD_Y+0.04, CARD_W-0.08, 0.38,
"ACIDIC pH & MATERIAL COMPARISON",
font_size=12, bold=True, color=WHITE, align=PP_ALIGN.CENTER)
# Acid effect
add_filled_rect(slide, c3x+0.10, CARD_Y+0.52, CARD_W-0.20, 0.28,
RGBColor(0xFA, 0xD7, 0xD0))
add_textbox(slide, c3x+0.12, CARD_Y+0.53, CARD_W-0.24, 0.26,
"EFFECT OF ACIDIC pH (pH 5.4–5.6)", font_size=9.5, bold=True, color=ACID_RED)
add_bullet_textbox(slide, c3x+0.10, CARD_Y+0.83, CARD_W-0.20, 0.85,
["Most detrimental condition (butyric acid)",
"↑ Interfacial gaps, adverse surface changes",
"Low pH disrupts hydration & reduces material stability"],
font_size=9, color=BLACK)
# EndoSeal advantage
add_filled_rect(slide, c3x+0.10, CARD_Y+1.75, CARD_W-0.20, 0.28,
RGBColor(0xD0, 0xE8, 0xFB))
add_textbox(slide, c3x+0.12, CARD_Y+1.76, CARD_W-0.24, 0.26,
"WHY EndoSeal MTA PERFORMED BETTER", font_size=9.5, bold=True, color=MID_BLUE)
add_bullet_textbox(slide, c3x+0.10, CARD_Y+2.06, CARD_W-0.20, 1.20,
["Smaller interfacial gap & higher Ca/P ratio vs MTA under acid",
"Zirconium oxide (EndoSeal) = greater acid stability",
"Bismuth oxide (conventional MTA) dissociates at low pH → ↑ porosity & structural instability"],
font_size=9, color=BLACK)
# Ca/P ratio meaning
add_filled_rect(slide, c3x+0.10, CARD_Y+3.33, CARD_W-0.20, 0.28,
RGBColor(0xFF, 0xF0, 0xC0))
add_textbox(slide, c3x+0.12, CARD_Y+3.34, CARD_W-0.24, 0.26,
"Ca/P RATIO SIGNIFICANCE", font_size=9.5, bold=True, color=RGBColor(0x8B, 0x60, 0x00))
add_bullet_textbox(slide, c3x+0.10, CARD_Y+3.64, CARD_W-0.20, 0.80,
["Ratio → 1.67 = apatite-like calcium phosphate",
"↓ Si, Ca, P on surface = CaP layer accumulating over Ca-silicate"],
font_size=9, color=BLACK)
# ── Bottom clinical bar ───────────────────────────────────────────────────────
bar_y = CARD_Y + CARD_H + 0.10
add_filled_rect(slide, 0, bar_y, 13.333, 0.80, DARK_BLUE)
add_textbox(slide, 0.20, bar_y + 0.05, 1.40, 0.30,
"CLINICAL RELEVANCE", font_size=9, bold=True, color=GOLD)
add_textbox(slide, 0.20, bar_y + 0.33, 12.80, 0.38,
"Acidic/inflamed perforation sites may compromise calcium silicate repair materials. "
"EndoSeal MTA shows better acid resistance — but this does not directly prove superior clinical healing.",
font_size=9.5, bold=False, color=WHITE, align=PP_ALIGN.LEFT)
# ── Save ─────────────────────────────────────────────────────────────────────
out = "/tmp/workspace/perforation-slide/Perforation_Repair_Discussion.pptx"
prs.save(out)
print(f"Saved: {out}")
python /tmp/workspace/perforation-slide/create_slide.py
| Section | Content |
|---|---|
| Key Concepts (dark blue) | Bioactivity, marginal adaptation, central finding, Ca/P ratio meaning |
| Blood & HBSS (dark red) | Blood contamination findings, HBSS apatite deposits, self-sealing phenomenon |
| Acidic pH (red) | Most detrimental condition, EndoSeal MTA vs MTA comparison, ZrO₂ vs Bi₂O₃ stability |
| Bottom bar (dark blue/gold) | Clinical relevance note |
Perforation Repair Discussion
Presentation · PPTX
Include only images in slide
Scientific diagram showing two key properties of perforation repair materials: Bioactivity (showing apatite crystal mineral deposition on a material surface with calcium and phosphate ions) and Marginal Adaptation (showing a tight material-dentin interface with no gap vs a gap with bacterial leakage). Clean infographic style with labeled arrows, white background.
Scientific comparison diagram showing three storage environments for calcium silicate cement: Blood (showing globular precipitates, no interfacial gap, mineralisation), HBSS - Hanks Balanced Salt Solution (showing flower-like apatite deposits, small gaps, self-sealing), and Acidic pH 5.4 butyric acid (showing large interfacial gaps, disrupted surface, most detrimental). Bar chart style or side-by-side panels, clean scientific infographic, white background.
Scientific diagram comparing EndoSeal MTA vs conventional MTA under acidic conditions (pH 5.4). Shows zirconium oxide in EndoSeal MTA being stable in acid (smaller gap, higher Ca/P ratio) versus bismuth oxide in conventional MTA dissociating in acid (larger gap, increased porosity). Use cross-section material diagrams with labels, clean infographic style, white background.
Scientific diagram explaining Ca/P molar ratio as an indicator of apatite-like mineral formation. Shows a spectrum or scale where ratio approaching 1.67 equals hydroxyapatite. Also shows EDX/EDS surface composition: decreasing silicon, calcium and phosphorus on surface indicating calcium phosphate layer accumulating over calcium silicate. Clean scientific infographic, labeled, white background.