>백엔드 개발 >PHP 문제 >PHP 리치 텍스트를 HTML로 변환하는 방법

PHP 리치 텍스트를 HTML로 변환하는 방법

藏色散人
藏色散人원래의
2021-11-16 09:34:022811검색

PHP 서식 있는 텍스트를 HTML로 변환하는 방법: 1. 해당 코드 파일을 열고 이미지 경로를 수정합니다. 2. phpword를 사용하여 "$phpWord = new PhpOffice PhpWord PhpWord..."와 같은 코드를 html로 변환합니다.

PHP 리치 텍스트를 HTML로 변환하는 방법 이 문서의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

php 서식 있는 텍스트를 html로 변환하는 방법

PHP 서식 있는 텍스트를 html, word, pdf 파일로 다운로드

Rich text 여기서는layui를 사용하고 있습니다. 가벼워서...

richtext 문서 사용법은 매우 간단합니다. 궁금한 점이 있으면 http://www.layui.com/으로 문의하세요. doc/modules/layedit.html

그런 다음 서식 있는 텍스트 데이터에 액세스한 후 원하는 콘텐츠를 꺼냅니다.

1. Convert html

$html = "원하는 콘텐츠가 여기에 있습니다!";

PHP 리치 텍스트를 HTML로 변환하는 방법 첫 번째 줄은 이미지 경로가 잘못되어 표시할 수 없기 때문입니다. 올바른 교체를 한 후

또는 위의 phpword 데모에 표시된 것처럼 phpword를 사용하여 html로 변환할 수도 있습니다.

phpword(composer)를 참조할 수 있습니다: Composer require phpoffice/phpword

<?PHP
require_once  &#39; bootstrap.php中&#39; ;
//创建新文档... 
$ phpWord  =  new  \ PhpOffice \ PhpWord \ PhpWord();
/ *注意:您附加到文档的任何元素都必须位于节中。* /
//添加一个空的部分到文档中... 
$ section  =  $ phpWord - > addSection(); 
//添加文本元素默认......风格的字体有第
$节- > addText(
 “ ‘借鉴昨天,活在今天,憧憬明天。‘ ’最重要的是不要停止问问题。’ ”。&#39;(爱因斯坦)&#39;);    
         
         
/ *
 *注意:可以通过三种方式自定义添加的Text元素的字体样式:
*  -  inline; 
*  - 使用指定的字体样式(隐式创建新的字体样式对象); 
*  - 使用明确创建的字体样式对象。
* / 
//&#39;添加带有字体自定义内联的文本元素... 
$ section - > addText(
 &#39;&#39;伟大的成就通常是由于伟大的牺牲&#39;&#39;。&#39;而且永远不是自私的结果。&#39;&#39;。&#39;(Napoleon Hill)&#39;, array( &#39; name &#39; => &#39; Tahoma &#39;, &#39; size &#39; => 10));    
         
         
        
//使用指定字体样式自定义字体添加文本元素... 
$ fontStyleName  =  &#39; oneUserDefinedStyle &#39; ; 
$ phpWord - > addFontStyle(
 $ fontStyleName, array( &#39; name &#39; => &#39; Tahoma &#39;, &#39; size &#39; => 10, &#39; color &#39; => &#39; 1B2232 &#39;, &#39; bold &#39; => true)); $ section - >    
            
    “最大的成就是不是永远不跌倒,‘ 
’但在再度上涨你掉下去了。” &#39;。&#39;(Vince Lombardi)&#39;,$ fontStyleName);         
         
    
//添加使用明确创建的字体样式对象自定义字体的文本元素... 
$ fontStyle  =  new  \ PhpOffice \ PhpWord \ Style \ Font(); 
$ fontStyle - > setBold( true); 
$ fontStyle - > setName( &#39; Tahoma &#39;); 
$ fontStyle - > setSize( 13); 
$ myTextElement  =  $节- > addText( &#39; “相信你能和你\&#39;重新一半。“(西奥多·罗斯福)&#39;); 
$ myTextElement - > setFontStyle($ fontStyle);
//将文档保存为OOXML文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; Word2007 &#39;); 
$ objWriter - > save( &#39; helloWorld.docx &#39;);
//将文档保存为ODF文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; ODText &#39;); 
$ objWriter - > save( &#39; helloWorld.odt &#39;);
//将文档保存为HTML文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; HTML &#39;); 
$ objWriter - > save( &#39; helloWorld.html &#39;);
/ *注意:我们跳过RTF,因为它不是基于XML的,需要一个不同的例子。* / 
/ *注意:我们跳过PDF,因为“HTML-to-PDF”方法用于创建PDF文档。* /

2. 단어 변환

(1) PHP 내장 file_put_contents()를 사용하여 단어로 저장하려고 시도한 후 모든 원본 html 태그 서식 있는 텍스트나 HTML 소스 코드가 필요하지 않으면 의미가 없습니다.

PHP 리치 텍스트를 HTML로 변환하는 방법 (2) 캐시 사용: 이미지를 로컬로 다운로드한 후 표시하려면 네트워크 주소(IP 또는 도메인 이름)만 사용할 수 있습니다.

$wors = str_replace("/uploads/layui/","http://172.16.3.125/notes/public/uploads/layui/",$html);
$this->start();
$newname = &#39;pppp&#39;;
$wordname = &#39;files/word/&#39;.$newname.".doc";//生成文件路径
echo $wors;
$this->save($wordname);
ob_flush();//每次执行前刷新缓存
flush();
function start()
{
    ob_start();
    echo &#39;<html xmlns:o="urn:schemas-microsoft-com:office:office"  xmlns:w="urn:schemas-microsoft-com:office:word"  xmlns="http://www.w3.org/TR/REC-html40">
          <head>
               <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
               <xml><w:WordDocument><w:View>Print</w:View></xml>
        </head><body>&#39;;
}
function save($path)
{
    echo "</body></html>";
    $data = ob_get_contents();
    ob_end_clean();
    $this->wirtefile ($path,$data);
}
function wirtefile ($fn,$data)
{
    $fp=fopen($fn,"wb");
    fwrite($fp,$data);
    fclose($fp);
}

(3) 다음과 같이 phpword를 사용하여 단어로 변환할 수도 있습니다. 위의 phpword 데모에서 볼 수 있듯이 참고로 로컬로 다운로드한 후 이미지를 표시하려면 네트워크 주소(IP 또는 도메인 이름)만 사용할 수 있습니다.

(4) 인터넷에 html을 로 변환하는 예가 있습니다. mht 하고 이미지 텍스트를 워드로 옮기는게 너무 길다고 생각해서 앞으로 한번 살펴보세요

3.pdf로 옮기기

(1) HTML- to-PDF: 들어는 봤지만 사용해본 적은 없습니다. 사용해보신 분 계시다면 조언을 주실 수 있을 겁니다

(2) mpdf(마파두부) 확장 사용(작곡가에 사용됨): 작곡가 필수 mpdf/mpdf

public function topdf()
    {
        $html = Db::table(&#39;diary&#39;)->where(&#39;id&#39;,12)->find();
        $title = &#39;<h1 style="text-align: center;">&#39; . $html[&#39;notename&#39;] . &#39;</h1>&#39;;
        $content = $html[&#39;content&#39;];
        $mpdf  =  new Mpdf();
        $mpdf->autoScriptToLang = true;
        $mpdf->autoLangToFont = true;
        $header=&#39;<table width="95%" style="margin:0 auto;border-bottom: 1px solid #4F81BD; vertical-align: middle; font-family:  
serif; font-size: 9pt; color: #000088;"><tr>  
                <td width="10%"></td>  
                <td width="80%" style="font-size:16px;color:#A0A0A0">这是我的页眉</td>  
                <td width="10%" style="text-align: right;"></td>  
                
                </tr></table>&#39;;
        $mpdf->SetHTMLHeader($header);  //页眉
//        $mpdf -> WriteHTML(&#39; <h1> Hello world!</h1> &#39;);
        $mpdf -> WriteHTML($title.$content);
        $mpdf->Output();
//        $mpdf -> Output(&#39;files/word/one.pdf&#39;,&#39;D&#39;); //存为文件
    }

잘못된 장소를 지적해 주셔서 감사합니다. 조언 환영)

추천 학습: "

PHP 비디오 튜토리얼

"

위 내용은 PHP 리치 텍스트를 HTML로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.