mirror of https://github.com/apache/poi.git
handle colors with opacity
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1160220 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
c178314554
commit
da8e38019a
|
@ -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 )
|
||||
{
|
||||
|
|
|
@ -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() );
|
||||
|
|
Loading…
Reference in New Issue