2016-11-03 2 views
2

PHPWord (https://github.com/PHPOffice/PHPWord/tree/develop)를 사용하여 배경색이 필요한 텍스트가있는 Word 문서를 생성하고 있습니다.PHPWord를 사용하면 라이브러리에서 적용한 스타일뿐만 아니라 진정한 Microsoft Word "텍스트 강조 색상"값을 변경할 수 있습니까?

PHPWord에는 섹션에 추가 된 텍스트에 인라인 스타일을 적용 할 수있는 기능이 있습니다. 나는 다음을 통해 그 일을하고있다 :

$section->addText(
    "Some text", 
    [ 
     "name" => "Tahoma", 
     "size" => 12,   
     "bgColor" => "#FF0000" 
    ]); 

문제는 내가 Microsoft Word에서 결과 문서를 열 때 나는 컬러 배경 텍스트 하지는 "텍스트로 사용하는 방법으로 색이므로주의이다 Word에서 도구를 사용하면 얻을 수있는 색 강조 표시 "를 선택하십시오.

enter image description here

따라서, 나는 (즉, 강조 표시) 텍스트의 일부를 선택하고 "텍스트 강조 색"도구를 선택하고 선택한 경우에도 "없음"이 PHPWord 적용했다 배경색 서식을 제거하지 않습니다 . 텍스트 전경색도 마찬가지입니다.

내 질문은 : PHPWord에서 배경색 스타일과 텍스트 글꼴 색상을 적용하는 방법이 있습니까? Microsoft Word 응용 프로그램에서 진정한 "텍스트 강조 색상"및 True "글꼴 색상으로 인식합니다 "해당 도구를 사용하는 응용 프로그램에 적용되는 것처럼? 또는 PHPWord가 제공하는 인라인 스타일에만 한정되어 있습니까?

답변

1

말씀은 텍스트에 서로 다른 두 가지 추가 할 수있는 방법 (배경) 색상이 있습니다

  • 음영 : 이것은 임의의 RGB 색상을 텍스트 뒤의 색상, 단락 또는 테이블 셀을 설정하는 데 사용할 수 있습니다 값.
  • 텍스트 강조 색상 : 문서의 텍스트 범위를 강조 표시하기 위해 사전 정의 된 15 가지 색상 중 하나를 선택할 수 있습니다. 강조 표시에는 몇 가지 특별한 속성이 있습니다. Word의 찾기 대화 상자에서 강조 표시된 텍스트를 검색 할 수 있습니다.

나는 PHPWord 라이브러리 너무 잘 알고 아니지만, (당신이 their sample에서 볼 수 있듯이) 그들이 fgColor 속성에 하이라이트 기능을 노출 것처럼 보이는 :

$section->addText(
    'This is some text highlighted using fgColor (limited to 15 colors)', 
    array('fgColor' => \PhpOffice\PhpWord\Style\Font::FGCOLOR_YELLOW) 
); 

참고 당신을 파일에서 사용 가능한 색상 목록을 볼 수 있습니다. Font.php :

/** 
* Foreground colors 
* 
* @const string 
*/ 
const FGCOLOR_YELLOW = 'yellow'; 
const FGCOLOR_LIGHTGREEN = 'green'; 
const FGCOLOR_CYAN = 'cyan'; 
const FGCOLOR_MAGENTA = 'magenta'; 
const FGCOLOR_BLUE = 'blue'; 
const FGCOLOR_RED = 'red'; 
const FGCOLOR_DARKBLUE = 'darkBlue'; 
const FGCOLOR_DARKCYAN = 'darkCyan'; 
const FGCOLOR_DARKGREEN = 'darkGreen'; 
const FGCOLOR_DARKMAGENTA = 'darkMagenta'; 
const FGCOLOR_DARKRED = 'darkRed'; 
const FGCOLOR_DARKYELLOW = 'darkYellow'; 
const FGCOLOR_DARKGRAY = 'darkGray'; 
const FGCOLOR_LIGHTGRAY = 'lightGray'; 
const FGCOLOR_BLACK = 'black'; 
+1

감사합니다. 그 def가 도움이되고 내가 찾고있는 것이지. 우리가 fgColor에 16 진수 값을 지정할 수없고 단 15 개로 제한된다는 것은 불행한 일입니다.하지만 이는 Word에 구운 제한 사항이며 PHPWord가 아닙니다. 귀하의 응답을 감사하십시오. –