업데이트를 검색 : 당신이 내 대답은 아래를 보면 오피스 문서 (형식 2007)에 RGB 색상을 결정해야합니다.오피스 2007 [이상] 상호 운용성은 : RGB 컬러를
은 유무 :
- Interop.Word.dll ver.14 VS2010 PIA에서,
- VS2010 Express Edition을
- MS 워드 2010 (ver.14)
- .DOCX 파일을 Interop없이 수동으로 언급 한 Word에서 만들었습니다. 파일에 색칠 된 모서리 셀이있는 여러 테이블이 있습니다.
목적 : 상호 운용성은 모서리 색상을 기반으로 그라데이션 컬러로 채워진 해당 테이블을 포함하여 다른 .DOCX 파일을 빌드합니다.
문제가 나타나는 곳 : 그라데이션을 계산하려면 테이블 모서리의 색상을 WdColor
에서 System.Drawing.Color
으로 변환해야합니다. 그래서 저는 세포의 Shading.BackgroundPatternColor
속성으로 작업합니다. 그리고 때로는 올바른 BGR 24 비트 값을 포함하고 때로는 그렇지 않음을 발견했습니다.
두 번째 경우는 셀에 테마 팔레트 색상 중 하나가있는 경우에만 나타납니다 (표준 및 rgb- 팔레트 색상은 잘 작동하지만 테마 팔레트 색상은 문제가됩니다). 예를 들어 0x00F2F2F2
(가장 밝은 회색)으로 설정하면 0xDC00F2FF
에 Shading.BackgroundPatternColor
속성이 올바르게 설정되어 있지만 .docx 파일 아카이브 내에서 document.xml
에 올바르게 저장됩니다. 따라서 ColorTranslator.FromOle
은 다른 색상을 반환합니다.
Btw,이 회색의 열거 형에는 WdColor가 없습니다. 회색 반사판으로 인해 가장 두꺼운 회색 wdColorGray05 = 0xF3F3F3
. 모든 팔레트 기본 색상이 열거 색상에 해당하는 것은 아닙니다.
또한 Word (예 : 242, 242, 242)의 RGB 팔레트에서 동일한 색상을 수동으로 설정 한 경우 파일을 저장하고 Interop에 의해 다시 열 때 - 색상이 0x00F2F2F2
으로 올바르게 설정됩니다!
질문 : 아무도 그 문제가 있었나요? Shading.BackgroundPatternColor
속성에서 RGB 색상을 올바르게 검색하는 방법은 무엇입니까? 이 속성이 document.xml
에 저장된 값과 일치하지 않는 이유는 무엇입니까?