12

幅 202mm、高さ 50mm のラベルを含む PDF ファイルを生成しようとしています。私はこれを行うことができ、必要なテキストとバーコードを追加しましたが、私の問題は、ラベルが最初に狭いエッジで印刷されるため、ページ全体を 90 度回転させる必要があることです。

ページを右クリックして [時計回りに回転] (Shift + Ctrl++)を選択するだけで、Adobe Reader で簡単にこれを行うことができますが、実際にはコードで行う必要があります。

誰かがTCPDFでこれを行う方法を知っていますか? Rotate 機能を試しましたが、機能しないようです。コードの例は役に立ちます。

4

7 に答える 7

12

バージョン 1.5 で行ったこと

    $pdf->AddPage(); // Orientation for the first page is defined into configuration file.

    $pdf->writeHTML("Portrait 1");

    $pdf->AddPage('L');

    $pdf->writeHTML("Landscape !");

    $pdf->AddPage('P');

    $pdf->writeHTML("Portrait 2");

    $pdf->Output();

そして、これはうまく機能しています。

于 2014-08-25T16:20:07.840 に答える
11

ページを作成するときに横向きに設定するのはどうですか?

TCPDF::__construct($orientation = 'L',
$   unit = 'mm',
$   format = 'A4',
$   unicode = true,
$   encoding = 'UTF-8',
$   diskcache = false)

$orientation (string) ページの向き。可能な値は次のとおりです (大文字と小文字は区別されません)。

  • P または縦 (デフォルト)
  • Lまたは横長
  • '' (空文字列) 自動方向付けの場合

http://www.tcpdf.org/doc/classTCPDF.html#a5420ac8b0726a604260780d8f4185fc1

于 2011-05-23T21:41:28.330 に答える
5

Rotate奇数です。ドキュメントが教えてくれないのは、StartTransform最初にa を実行してから a を実行しRotate、その後にa を実行する必要があるということですStopTransform。何らかの方法で X/Y 位置を設定した後でのみStartTransform呼び出しを行うことができます (たとえば、SetXY最初にページを配置するために使用してから、 を呼び出すことができますStartTransform)。だからやってみてください:

  $this->pdfinvoice->StartTransform();
  $this->pdfinvoice->Rotate(-90);

次に、コンテンツを追加してから呼び出します

  $this->pdfinvoice->StopTransform();

あなたが終わったら。それがどのように機能するかを見てください。

于 2011-05-26T13:40:17.297 に答える
1

ランドスケープへの最も簡単で簡単な方法は次のとおりです。最初に tcpdf.config ファイルに移動し、次に行に移動します

 * Page orientation (P=portrait, L=landscape).
 */
define ('PDF_PAGE_ORIENTATION', 'L','P');

「P」を「L」に変更して保存し、実行するだけです。

于 2021-11-10T05:57:29.880 に答える
0

最も簡単なオプションは、必要に応じてページをランドスケープ モード 'L' に設定することです。それ以外の場合、ポートレート モードのページが必要であるが、オブジェクトが回転している場合は、XObject テンプレートを作成し、グラフィック変換を含むコンテンツをそこに配置できます。グラフィカルな変換と XObject テンプレートについては、 http: //www.tcpdf.orgのデフォルトの例を確認してください。

于 2011-09-26T15:31:00.413 に答える