Chemistry Add-In for Microsoft Word

CML is Cool

  • Home
  • History
  • Download
  • Consultancy
  • Sponsors
  • Under the Hood
  • News
  • Shop
    • My account
    • Basket
  • Support ▾
    • Knowledge Base
    • Usage
    • FAQs
    • Tutorials

Why Should I Use Chem4Word?

5th July 2023 by Clyde Davies

It’s a valid question.

After all, there are now lots of chemical content creation tools. Some, like ChemDraw, and Biovia Draw have been around for decades and are well-established. They come with lots of nice features. You don’t have to look far to find something that fits your needs.

So why Chem4Word? If you are a student, teacher, professional chemist or simply interested in chemistry, Chem4Word is for you. You can create your own documents with fully semantic chemistry. No other chemical drawing tool supports this.

Here are some more reasons why you should use Chem4Word:

Chem4Word is free!

That’s right: completely free. The Chem4Word application is and will continue to be free. Whether you’re a student, teacher or professional scientist, the Apache 2.0 license means that you can use it completely free of charge! You can distribute the package as you see fit.

Chem4Word understands Word.

We designed Chem4Word to fully integrate with Microsoft Word. And everything is at your fingertips. No more cutting and pasting between apps. No more scratching-about, trying to find favourite molecules!

Our in-document rendering of chemistry is class-leading. Our ACME editor is fast, powerful and responsive, and fully supports reactions.

Synthesis of TNT in ASCME

Chem4Word comes with Libraries

You can store chemistry and search for it easily. Soon, we’ll be allowing you to compose and support your own libraries of molecules and reactions.

We Support Open Information!

Too much important information is locked away. Even when you create your own, the people who produce the tools make it difficult for you to get at.

Chem4Word opens the information up for anyone to consume! Chemical Markup Language (CML) underpins it all. And it’s human readable and you can extract chemistry from documents. Your content is open and reusable!

We Listen to Your Needs.

Our FaceBook group allows you to tell us what you want from Chem4Word. Join it and start talking today!

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on X (Opens in new window) X
  • Click to email a link to a friend (Opens in new window) Email

Filed Under: News

Improved Chemical Libraries are live in Chem4Word!

14th June 2023 by Clyde Davies

Libraries in Chem4Word are just what they say: collections of reusable chemistry, catalogued for quick access.

Chem4Word didn’t used to supply a Library. Early versions had the Gallery: a collection that was stored in a standard Word template, but this was clunky, error-prone and more importantly our users did not like their templates being swapped out.

Version 2.0 introduced the Library (singular!). We bundled a compact database with Chem4Word which allowed to you easily store and catalogue your own chemistry. Recent versions of Chem4Word added about 2000 natural products to the Library. We did this because we wanted to show off the speed and power of the new functionality.

Version 3.3 of Chem4Word now includes vastly enhanced Libraries (note the plural!).

Library Editing

Chem4Word includes a brand new Library editor, this is activated by the ‘pencil’ icon in the Library pane:

All structures are fully editable. You can also add your own tags to structures. Permissions permitting, you can export or import structures to several different file formats such as CML or molfiles.

You can create your own libraries and distribute them to your friends, co-workers and pupils!

Multiple Libraries.

Chem4Word 3.3 supports multiple libraries. The Library pane now hosts a dropdown where you can select your active library:

You can have as many libraries as you want – disk space permitting, of course! (But who worries about disk space these days?)

You can fully configure your libraries through the Settings dialog: Note that by design the active library can’t be removed. Locked libraries are for system use and can’t be edited.

Secured Libraries

Chem4Word supports fully-secured libraries containing licensed content. We now can host libraries which are licensed on a per-machine and per-individual basis. Our own content will be available to download, such as collections of named chemical reactions! You will need to click on the “Download a Library” button shown above.

We hope you enjoy and make good use of this exciting new functionality!

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on X (Opens in new window) X
  • Click to email a link to a friend (Opens in new window) Email

Filed Under: News

Draw Chemical Reactions Easily and Quickly with Chem4Word!

26th March 2023 by Clyde Davies

ACME draws a reaction

This is first of a series of simple guides to getting the best from Chem4Word.

Below is a video, we have produced, to demonstrate the subject of this post.

Draw a Simple Reaction

For now, you cannot download reactions or load them from libraries. So, you must draw reactions yourself.

Chem4Word makes this very easy! You can draw a reaction like drawing any chemistry.

Use ACME to draw reactions. Start by drawing out the reactants and products.

Here, I’ve chosen the Kolbe-Schmitt reaction. This is the first step in making aspirin. Carbon dioxide reacts with phenol and sodium hydroxide under pressure and salicylic acid is the product. It’s the first step in this scheme:

Draw the Reactant and Product

Use ACME to draw the phenol reactant and salicylic acid product. You can save time by cutting and pasting the phenol skeleton:

Reactant and product

Draw a Reaction Arrow

The next step is to draw a reaction arrow. The reaction arrow button on the toolbar puts ACME into arrow drawing mode:

The reaction toolbar below allows you to choose an arrow type from the dropdown. I’ve left it as the standard reaction arrow for now. Click the dropdown to display all the arrow types:

Click and drag to draw an arrow

You can change the arrow type by clicking on it to select it, then choosing a new arrow from the dropdown:

Add Reagents and Conditions

You’ll have noticed the orange blocks that appear above and below the arrow. These contain the reagents and conditions.
By convention, reagents are placed above the arrow, and conditions below it. ACME doesn’t enforce this rule so you can put them where you like.

You can type in these blocks in one of two ways:

  • Click on either the reagents or conditions button;
  • Double-click an orange block.

ACME switches to editing the reagents/conditions: you can type whatever you wish into this box.

Use the formatting/special characters toolbar to add superscripts, subscripts or special symbols.

N.B: any text typed into either of these fields is stored as simple formatted text. ACME makes no attempt to ‘semanticise’ the text into reagents, solvents or other chemical entities.

Cleaning Things Up.

Chances are, your drawing now looks a little wonky, since ACME uses free placement of structures and other objects.

No worries! We’ve added special alignment tools to neaten your drawings. You can align to tops, bottoms, right or left edges, or middles of the objects.

To align:

Select the objects you want to align. ACME now enables the Alignment toolbar.

Now click the Align Middles button

ACME aligns the vertical centres of all objects

You can align bottoms, tops or edges if you wish using buttons from the same toolbar.
Well done! You have just drawn your first reaction in Chem4Word!

Please contact us if you have any constructive suggestions!

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on X (Opens in new window) X
  • Click to email a link to a friend (Opens in new window) Email

Filed Under: Tutorials Tagged With: drawing, Edit structure, reactions, Tutorial

Under the Hood: 1- Modelling Chemistry

12th October 2022 by Clyde Davies

This is the first in (what I hope will be) a series of occasional postings.  Targeted at developers mainly, these will cover some of the problems we come across, and how we solve them.

Chem4Word is about ten years old.  It started out as a research project.  Such projects typically explore new ways of solving problems.  They don’t set out to optimize established approaches.  When you keep adding new functions at the expense of making existing ones work better, you end up with cruft.

The cruftiest portion of Chem4Word was its in-memory chemistry handling.  Chem4Word’s standard file format is Chemical Markup Language, an XML dialect. There was no logical differentiation between the file containing the information and its in-memory representation.  The code simply loaded the CML as-is into an XDocument.  It then manipulated the XML directly.  This was very wasteful as it required the XML parsed every time we needed to manipulate something.  XDocuments are fine for limited XML editing, but when you’re constantly hitting the document then the conversion overhead becomes huge.

Some CML for a simple molecule!

So, we wrote a completely new, in-memory Model class in C#. The Model in essence represents a chemical drawing.   A Model contains Molecules,  which can contain other Molecule objects or Atom and Bond collections.

Atoms obviously are the building blocks of Molecules.  We store these in Molecules as dictionaries.  These allow us to quickly retrieve an Atom by its label, such as ‘a1’.  Bonds are simple collections, which reference a StartAtom and EndAtom  as a text label.  So Bond ‘b1’ would link Atoms ‘a1’ and ‘a2’, for example.

Atoms obviously have to reference a specific Element. There are obviously a limited number of these, stored in a single global PeriodicTable.

Each Molecule also contains what we term as emergent objects.  So, a Molecule has a collection of Rings, and each Ring collects several Atoms.   Atoms can be shared by more than one ring.

This simple approach allows us to create compact in-memory representations of quite complex molecules.  The XML representation, instead of being central, is now relegated purely to persistence roles.  Previewing, in-document rendering, editing and many other functions now work on the  Model.  A dedicated CMLConverter class handles conversion to and from the CML format, typically when storing this in a Custom XML Part.

No doubt some purists will take issue with this rather literal implementation but we (and you) are already reaping the benefits.   The improved performance is by far the most dramatic effect.  Even on a relatively fast machine, rendering insulin in the document used to take six or seven minutes.  Now it takes a few seconds.  We have seen performance improvements of 400-500% on small molecules and 12,000% on large ones!

One final benefit comes from exposing the atoms and bonds as objects in their own right, and organizing them as collections.  We can now data-bind to them.  Windows Presentation Foundation makes heavy use of data binding.  So, we could theoretically data-bind various visual elements to their corresponding logical ones.  And this is precisely what we do in the FlexDisplay component, which we will cover in a later post.

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on X (Opens in new window) X
  • Click to email a link to a friend (Opens in new window) Email

Filed Under: News, Under the Hood

All New for 2022: Chem4Word does Chemical Reactions!

15th March 2022 by Clyde Davies

We’ve Been Busy!

2021 was a challenging year for many of us. We are still glad that we managed to produce a new release of Chem4Word. The most effort went into improving ACME, our new molecule sketcher.

ACME opens new horizons for Chem4Word. And I’d like to talk about some of those now.

Reactions

Chemistry is the study of change, as Walter White memorably points out.

Chem4Word up to now has been more concerned with static molecules. We think it presents these as well as any paid-for package.

But molecules are boring, yeah? You got enthused when you saw some chemistry happening! You have been demanding change. And we’re going to deliver it!

We’ve been working on basic reaction functionality. What’s that? Well, it’s drawing different kinds of chemical reactions and specifying reactants, products, reaction type with reagents and conditions. Here’s a sneak preview:

But Chemical Markup Language, which underpins Chem4Word, is capable of much, much more. CML describes reactions in great detail using CML-React. You can fully specify the reaction type, reagents and conditions. You can also set reactants and products for a reaction.

Semantic Reagents

We want to treat reagents and solvents as first-class chemical objects in their own right. So, we will add custom dictionaries of these, both from libraries and from online sources like Wikipedia.

Electron Pushing

We also plan to fully support reaction mechanisms with electron pushers (‘curly arrows’). Chem4Word will be the best free chemistry tool for teaching and understanding chemistry!

How You Can Help

We are now beta-testing this new version, so get involved if you can. Download the beta and tell us what you think. All your feedback is valuable!

Clyde Davies
Project Leader.

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on X (Opens in new window) X
  • Click to email a link to a friend (Opens in new window) Email

Filed Under: News Tagged With: chemical reactions; semantic chemistry; chem4word

  • 1
  • 2
  • Next Page »

Recent Posts

  • Chem4Word – V3.3.10 Release 8
  • Why Should I Use Chem4Word?
  • SketchEl file support now included in V3.3
  • Improved Chemical Libraries are live in Chem4Word!
  • Draw Chemical Reactions Easily and Quickly with Chem4Word!

Archives

  • February 2025
  • July 2023
  • June 2023
  • March 2023
  • December 2022
  • November 2022
  • October 2022
  • March 2022
  • September 2020
  • August 2020
  • December 2018
  • April 2017
  • January 2017
  • December 2016
  • September 2016
  • December 2015
  • Privacy Policy – Chemistry Add-In for Microsoft Word
  • About Us
  • Contact Us
  • Cookie Policy (UK)

Copyright © 2025 · "Supported by the .NET Foundation" · Log in

Manage Cookie Consent
We use technologies like cookies to store and/or access device information. We do this to improve browsing experience and to show (non-) personalised ads. Consenting to these technologies will allow us to process data such as browsing behaviour or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
View preferences
{title} {title} {title}