web-dev-qa-db-ja.com

FPDFは新しいフォントを追加します

PHPのFPDFライブラリを使用してレポートを生成していますが、コアフォントに含まれていない別のフォント(Verdana)を使用する必要があります。次の行を追加しました。

$pdf->AddFont('Verdana','','verdana.php');

ファイルverdana.phpとverdana.zをfontsディレクトリにコピーしました。次の手順を使用すると、すべてが正常に機能します。

$pdf->SetFont('Verdana','',6);

しかし、次の命令を使用しようとすると(太字フォントを使用するため):

$pdf->SetFont('Verdana','B',6);

エラーが発生します:

FPDF error: Undefined font: verdana B

VerdanaBoldに別のフォントを追加してみました。

$pdf->AddFont('Verdana-Bold','B','verdanab.php');

もちろん、vertanab.phpファイルとverdanab.zファイルをfontsディレクトリに置きます。しかし、同じエラーが発生します。不足しているもの、または両方のVerdanaフォント(通常と太字)の使用方法は?

前もって感謝します。

8
Marco Muciño

これに関する興味深い記事を読みました。それはあなたが探しているものであなたを助けるはずです。

TrueTypeフォントをFPDFドキュメントに追加する

多分このようなもの:

$pdf->AddFont('Verdana','B','verdanab.php');
8
SeanWM

require( 'fpdf.php');の前に、スクリプトの先頭にフォントディレクトリを追加したことを確認してください。

define('FPDF_FONTPATH','./font/');

すでにそれを行っている場合は、setFont()メソッドから「B」を削除するだけです。その迅速な修正であり、良い習慣ではありません。

$pdf->SetFont('Verdana','',6);

さらにヘルプが必要な場合は、これを実行できます 新しいフォントの追加とエンコードのサポート

1
silk_route11

次の構文を使用します。

$pdf->AddFont('Verdana','','verdanab.php');

使用する代わりに:

$pdf->AddFont('Verdana','B','verdanab.php');

1

スタイルごとにフォントを定義することで解決しました。

$pdf->AddFont('Verdana','','verdana.php');
$pdf->AddFont('Verdanabold','','verdanabold.php');

次に、以下を使用します。

$pdf->SetFont('Verdana','',6); // Regular style
$pdf->SetFont('Verdanabold','',6); // Bold style
0
Stefan Vogt