2016-08-24 10 views
1

現在、Word2007、Word2013で問題はテストされており、LibreOfficeでは問題なく動作しています。PHPWordテキストをワードラップするには?

私はセル内のmysqlデータベースからテキストを取得していますが、改行は考慮されていません。 Word2007で

例:
テキスト= - カー - 平面 - ソファ - LibreOfficeの(Ubuntuの16 LTS)におけるオフィス

例:
- カー
- 平面
- ソファ
- オフィス

私はfo PHPWord 'wordWrap'=>trueの中にはオプションがありますが、何の効果もないようです。

誰かがその問題に遭遇しましたか、私に実例を教えてください。

EDIT:細胞の入ったテーブルの中で最初の溶液を試してみる。 (10 \ nが存在する場合、それは10回細胞を再作成に以下のコードは、whileループの内側にある)

$table->addRow($height); 
$table->addCell($width, $styleVertical)->addText("$risques_identifies", $styleTextNextRow, $styleLeft); 
$table->addCell($width, $styleVertical)->addText("$epi_epc", $styleTextNextRow, $styleLeft); 

$table->addCell($width, $styleVertical); 
$textlines_organisation_documentation=explode("\n",$organisation_documentation); 
for ($i = 0; $i < sizeof($textlines_organisation_documentation); $i++) { 
$table->addText("$textlines_organisation_documentation", $styleTextNextRow, $styleLeft); 
} 

私のコードは、エラーを作成します。私はどのようにセルを作成し、後にテキストを追加するかわかりません( "for"内)。これは私がやろうとしていることです。

答えて

2

これは\nで定義された各段落の改行を挿入します:

編集(感謝@CBroe)

$text = "foo\nbar\nfoobar"; 
$textlines = explode("\n", $text); 

// Create table... 
// Add table cell 
$mycell = $table->addCell() 

// Loop content to append cell 
for ($i = 0; $i < sizeof($textlines); $i++) { 
    $mycell->addText($textlines[$i]); 
} 
+0

ソリューションは、純粋なテキスト良い点で正常に動作していること。私はそれを細胞の入ったテーブルの中に加える方法を知らない。私は自分のコードを表示するために私の質問を編集し、アーカイブしようとしていることを詳細に説明します。おそらく何も私はオブジェクトのコーディングに慣れていない私は古い方法を行うために使用されています。ありがとう – BackTrack57

+0

@ BackTrack57:あなたのコードでは、セル上でaddTextを一度呼び出しています - 何度も何度も問題が起きています。 – CBroe

+0

@CBroeああ良い点!私はこのコードがwhileループの中にあるので、同じセルの10倍を再作成し、私に巨大なテーブルを与えてくれることを忘れてしまいました。私は問題のこの詳細を追加します。ありがとう – BackTrack57

関連する問題