diff --git a/src/scratchpad/src/org/apache/poi/hwpf/converter/AbstractWordUtils.java b/src/scratchpad/src/org/apache/poi/hwpf/converter/AbstractWordUtils.java
index eeb5d7843..455eb21b0 100644
--- a/src/scratchpad/src/org/apache/poi/hwpf/converter/AbstractWordUtils.java
+++ b/src/scratchpad/src/org/apache/poi/hwpf/converter/AbstractWordUtils.java
@@ -306,11 +306,22 @@ public class AbstractWordUtils
         }
     }
 
-    public static String getColor24( int value )
+    public static String getOpacity( int argbValue )
     {
-        if ( value == -1 )
+        int opacity = (int) ( ( argbValue & 0xFF000000l ) >>> 24 );
+        if ( opacity == 0 || opacity == 0xFF )
+            return ".0";
+
+        return "" + ( opacity / (float) 0xFF );
+    }
+
+    public static String getColor24( int argbValue )
+    {
+        if ( argbValue == -1 )
             throw new IllegalArgumentException( "This colorref is empty" );
 
+        int value = argbValue & 0x00FFFFFF;
+
         // http://www.w3.org/TR/REC-html40/types.html#h-6.5
         switch ( value )
         {
diff --git a/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToFoUtils.java b/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToFoUtils.java
index 29723cfce..f80f59c68 100644
--- a/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToFoUtils.java
+++ b/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToFoUtils.java
@@ -76,6 +76,12 @@ public class WordToFoUtils extends AbstractWordUtils
         {
             inline.setAttribute( "color", getColor24( characterRun.getIco24() ) );
         }
+        final int opacity = (int) ( characterRun.getIco24() & 0xFF000000l ) >>> 24;
+        if ( opacity != 0 && opacity != 0xFF )
+        {
+            inline.setAttribute( "opacity",
+                    getOpacity( characterRun.getIco24() ) );
+        }
         if ( characterRun.getLanguageCode() != 0 )
         {
             final String language = getLanguage( characterRun.getLanguageCode() );