지점 마스터 :
PHPWord는 다양한 문서 파일 형식에 쓰고 읽을 수 있는 클래스 세트를 제공하는 순수 PHP로 작성된 라이브러리입니다. PHPWord의 현재 버전은 Microsoft Office Open XML(OOXML 또는 OpenXML), Office 응용 프로그램용 OASIS Open Document 형식(OpenDocument 또는 ODF), 서식 있는 텍스트 형식(RTF), HTML 및 PDF를 지원합니다.
PHPWord는 LGPL 버전 3의 조건에 따라 라이센스가 부여된 오픈 소스 프로젝트입니다. PHPWord는 지속적인 통합과 단위 테스트를 통합하여 고품질 소프트웨어 제품을 목표로 합니다. 개발자 문서를 읽으면 PHPWord에 대해 자세히 알아볼 수 있습니다.
궁금한 점이 있으면 StackOverFlow에 문의하세요.
PHPWord에 대해 자세히 알아보세요:
PHPWord를 사용하면 PHP 스크립트를 사용하여 OOXML, ODF 또는 RTF 문서를 동적으로 생성할 수 있습니다. 다음은 PHPWord 라이브러리로 수행할 수 있는 작업 중 일부입니다.
PHPWord에는 다음이 필요합니다:
PHPWord는 Composer를 통해 설치됩니다. 프로젝트에서 PHPWord에 종속성을 추가하려면 다음 중 하나를 수행하세요.
최신 안정 버전을 사용하려면 다음을 실행하세요.
composer require phpoffice/phpword
또는 아직 출시되지 않은 최신 버전을 원하는 경우
composer require phpoffice/phpword:dev-master
다음은 PHPWord 라이브러리의 기본 사용 예입니다.
require_once ' bootstrap.php ' ;
// Creating the new document...
$ phpWord = new PhpOffice PhpWord PhpWord ();
/* Note: any element you append to a document must reside inside of a Section. */
// Adding an empty Section to the document...
$ section = $ phpWord -> addSection ();
// Adding Text element to the Section having font styled by default...
$ section -> addText (
' "Learn from yesterday, live for today, hope for tomorrow. '
. ' The important thing is not to stop questioning." '
. ' (Albert Einstein) '
);
/*
* Note: it's possible to customize font style of the Text element you add in three ways:
* - inline;
* - using named font style (new font style object will be implicitly created);
* - using explicitly created font style object.
*/
// Adding Text element with font customized inline...
$ section -> addText (
' "Great achievement is usually born of great sacrifice, '
. ' and is never the result of selfishness." '
. ' (Napoleon Hill) ' ,
array ( ' name ' => ' Tahoma ' , ' size ' => 10 )
);
// Adding Text element with font customized using named font style...
$ fontStyleName = ' oneUserDefinedStyle ' ;
$ phpWord -> addFontStyle (
$ fontStyleName ,
array ( ' name ' => ' Tahoma ' , ' size ' => 10 , ' color ' => ' 1B2232 ' , ' bold ' => true )
);
$ section -> addText (
' "The greatest accomplishment is not in never falling, '
. ' but in rising again after you fall." '
. ' (Vince Lombardi) ' ,
$ fontStyleName
);
// Adding Text element with font customized using explicitly created font style object...
$ fontStyle = new PhpOffice PhpWord Style Font ();
$ fontStyle -> setBold ( true );
$ fontStyle -> setName ( ' Tahoma ' );
$ fontStyle -> setSize ( 13 );
$ myTextElement = $ section -> addText ( ' "Believe you can and you ' re halfway there." (Theodor Roosevelt) ' );
$ myTextElement -> setFontStyle ( $ fontStyle );
// Saving the document as OOXML file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' Word2007 ' );
$ objWriter -> save ( ' helloWorld.docx ' );
// Saving the document as ODF file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' ODText ' );
$ objWriter -> save ( ' helloWorld.odt ' );
// Saving the document as HTML file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' HTML ' );
$ objWriter -> save ( ' helloWorld.html ' );
/* Note: we skip RTF, because it's not XML-based and requires a different example. */
/* Note: we skip PDF, because "HTML-to-PDF" approach is used to create PDF documents. */
더 많은 예제는 샘플 폴더에 제공됩니다. 해당 샘플에 쉽게 액세스하려면 샘플 디렉토리에서 php -S localhost:8000
시작한 다음 http://localhost:8000으로 이동하여 샘플을 확인하세요. 자세한 내용은 개발자 문서를 읽어보실 수도 있습니다.
우리는 PHPWord에 기여하는 모든 사람을 환영합니다. 다음은 귀하가 기여하기 위해 할 수 있는 몇 가지 사항입니다.