コンテンツがプレーンテキストの場合は、「テキスト」フィールドのコンテンツのみを含むビューを作成し、そのビュー/アクションのレイアウトを無効にするか、ビューをまったく使用せずにコントローラーからの結果をエコーするだけです例えば
あなたのコントローラーで
public function printable($id)
{
// (retrieve your data from the database here)
// ...
$this->layout = false;
$this->autoRender = false;
echo $contrato['Content']['text'];
}
既存の/他のビュー内で、印刷可能なバージョンにリンクします。
<?php
echo $this->Html->link(
'printable version',
array(
'action' => 'printable',
0 => $id // needs to be present as a viewVar or some other way
),
array('target' => '_blank')
);
?>
使用するには、CTRL+P または「印刷」を手動で使用する必要があります
いくつかのメモ/コメント
コンテンツがプレーン テキストの場合、テキストはブラウザーが使用する既定のフォントで印刷されます。
ブラウザーから HTML を印刷する場合、ページが印刷される正確な方法を制御することはできません。CSS にはさまざまな「印刷」オプションがありますが、ほとんどの場合、ブラウザーは印刷時にヘッダーやフッターを追加します (たとえば、印刷されたページの URL とページ番号)。
フォント、ページサイズ、ヘッダー/フッターの抑制など、出力のレイアウトを完全に制御する唯一のオプションは、コンテンツの PDF ファイルを生成することです。PHP を使用して HTML を PDF に変換するためのさまざまなライブラリが存在します。このための便利な CakePHP プラグインは、次の場所にあります。
https://github.com/ceeram/CakePdf