# Changelog All notable changes to ChemDraw Bridge are documented here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [1.2.0] - 2026-11-02 ### Added - `chemdraw_convert`: ChemDraw-backed conversion between `.cdxml`, `.cdx`, `.mol`, `.sdf`, `.png` and `.svg`. This is the interoperability bridge for Avogadro, PyMOL, OpenBabel, Origin and other chemistry software. - `insert_chemdraw`: inserts a real `ChemDraw.Document.6.0` OLE object into Word `.docx` or PowerPoint `.pptx`. The object remains editable by double-clicking; Word and PowerPoint are scaled to the page/slide with the source aspect ratio preserved. - `scripts/office_insert.ps1` with Office COM cleanup and save retries. ### Changed - README and Chinese manual document the ChemDraw conversion formats and the Word/PowerPoint OLE workflow, including the Office requirement. - PDF is intentionally not a `chemdraw_convert` output: ChemDraw `SaveAs` does not reliably write PDF, so SVG/PNG or the Word/PowerPoint export path is used. ### Fixed - Rebuilt `scripts/convert.ps1` and `scripts/reaction_layout.ps1` without `Get-Clipboard`: reading the clipboard triggered a Windows Defender quarantine of the scripts, which removed them and broke structure/reaction generation. They now only write the clipboard for SMILES paste and do not read it back. ## [1.1.1] - 2026-10-21 ### Fixed - Reaction captions were placed with `p` treated as a center, but ChemDraw's caption `p` is the left edge. Conditions and yields are now shifted by half their estimated text width, so they sit centered above/below the arrow. - `draw_reaction` now measures each structure in ChemDraw before the final layout. Large substrates/products no longer collide with the arrow or the conditions; multiple condition lines are each centered above the arrow. - `recognize_image` accepts an optional `expected_formula` hard check. A candidate with a missing or extra carbon is rejected instead of being drawn. This was added after a Fig. 2 interpretation missed the α-CH2 next to the carbonyl; the corrected substrate is C20H15N3O4 and the product is C26H19N3O4. ### Changed - The README/Chinese manual now recommend passing `expected_formula` when the formula is known, and explicitly warn that PhthN/MQ/Boc abbreviations are not an OCSR use case. ## [1.1.0] - 2026-10-21 ### Added - `recognize_image`: OSRA structure recognition for a cropped figure image or a PDF page region, with RDKit validation of every SMILES candidate. - `draw_reaction`: one-step reaction-scheme drafts from reactant/product SMILES, including arrow, conditions, yield and plus signs. - SciFinder export import through `import_scifinder` (SDF preferred, CSV/TSV/TXT with CAS numbers also supported). - `draw_from_identifier` accepts `SMILES:` for structures that did not come from PubChem. - Setup scripts for the non-committed runtime dependencies: `scripts/setup-python.ps1` and `scripts/setup-osra.ps1`. ### Changed - Publication-style structure layout is now generated with RDKit CoordGen instead of ChemDraw's clipboard placement. This avoids tall, awkward layouts for large molecules. - Standard drawing settings: Arial 9 pt labels, 0.4 cm bond length, 0.6 pt line width, 10 pt bond spacing and 1 pt margin. - Reaction schemes use compact spacing, smaller arrowheads, 9 pt Arial conditions/yields and joined plus signs. Their structures also use CoordGen geometry for consistency with the single-structure layout. - README and Chinese manual now include installation, image recognition, reaction drafting and SciFinder export sections. ### Fixed - SMILES element counter treated an aromatic atom after an uppercase atom (for example `Oc1...`) as a two-letter element; it now only accepts real two-letter symbols such as `Cl` and `Br`. - CoordGen MOL files set the absolute chiral flag, which removes ChemDraw's `&1` enhanced-stereo labels from the drawing. - Reaction and structure automation wait for and clean up only the ChemDraw processes started by the current call. ## [1.0.0] - 2026-10-21 ### Added - Initial ChemDraw Bridge plugin: CAS/name/CID lookup, fuzzy candidate search, paper/SI extraction, native `.cdxml`/`.cdx` output and composition validation.