1

行の幅を取得したい(複数のセルで構成されている)

私はこれを試しました:

$this->objDrawing = new PHPExcel_Worksheet_Drawing();
$this->objDrawing->setCoordinates('A12:I12');
$this->objDrawing->getWidth();

..そしてgetWidth()は0を返しますが、A12:I12では各セルにコンテンツがあります。

なぜそのgetWidth(); 行の合計幅を返すことを期待しているときに0を返しますか?だから私は何が間違っているのですか?

4

1 に答える 1

0

幅は、ファイルを描画オブジェクトに追加するときに設定され、画像ファイルが占める列ではなく、画像ファイルの幅に基づいて (比例調整を行った場合) 設定されます。

編集

ワークシート内の列の範囲の幅を計算するには:

$defaultColumnWidth = $pSheet->getDefaultColumnDimension()->getWidth();

明示的にオーバーライドされない限り、各列のデフォルトの幅が得られます。ただし、通常はこれに 9.10 を使用します。

次に、個々の columnDimension ごとに、定義された幅と、オートサイズが有効になっているかどうかを確認します。

自動サイズ調整が有効になっている場合は、その列のすべての値の内容に基づいて、使用される幅を計算する必要があります

ワークシートの calculateColumnWidths() メソッドを使用します。

これにより、columnDimension の幅が計算された値に設定され、使用できるようになります。

非表示または折りたたまれた列に注意してください。

于 2013-01-08T11:07:51.450 に答える