1

PHPでPDFドキュメントを変更したい。PDFファイルの作成と変更を可能にするライブラリFPDFFPDIを見つけました。これが私の非常に単純なコードです:

<?php
require_once('include/fpdf.php');
require_once('include/fpdi.php');

// initiate FPDI
$pdf = new FPDI();
// add a page
$pdf->AddPage();
// set the sourcefile
$pdf->setSourceFile('input.pdf');
// import page 1
$page1 = $pdf->importPage(1);
// insert the page
$pdf->useTemplate($page1);

// now write some text above the imported page
$pdf->AddFont('calibri');
$pdf->SetFont('calibri','',11);
$pdf->Write(0, "This is just a simple text");

header("Content-Type: application/pdf");
$pdf->Output();

これは非常にうまく機能しますが、挿入されたテキストは、すでに埋め込まれているフォントではなく、システムフォントへの参照のようなものを追加していることがわかります。埋め込みフォントを簡単に再利用するにはどうすればよいですか?

そのライブラリでそれが不可能な場合は、遠慮なく3番目の無料ライブラリを指定してください。


すでに使用している文字だけでも使えることは知っていますが、特別な場合は問題ありません。可能なすべての文字が適切な大文字と小文字の区別で使用されていることを確認しました。

4

2 に答える 2

5

インポートされたPDFページからの埋め込みフォントは呼び出されないに違いありませんcalibri。(PDFでのフォント名の小文字のみのスペルは非常にまれです。)

Calibriまた、PDFがフルセットとして埋め込まれることはないでしょう。サブセットのみである可能性が高いです。また、サブセットとして、フォント名は、ランダムな6文字の大文字のプレフィックスと元のフォント名で構成されます(次のようになります)。

 AXBTZV+Calibri

その正確な名前を見つけて、これを試してみる必要があります。(ただし、PHPライブラリがどのように機能するか、それが可能かどうか、PDFテキスト書き込みコードの変更を正しい方法で処理できるかどうかはわかりません。PDFをギミしてください。ただし、テキストエディタでは...)

于 2012-07-05T20:03:34.607 に答える
0

PDFで使用されている文字のみが保存されるため、PDFでフォントを再利用することはほとんど不可能です。したがってW、PDFテンプレートで大文字を使用したことがなく、大文字を使用してテキストを追加する場合は、大文字を表示できません。

これはあなたの質問に答えるのではなく、まったく試さないように指示します。

于 2012-05-23T06:49:18.263 に答える