複数のPDFファイルを1つに結合したい。PDF ファイルは異なるサイトにあるため、最初にダウンロードして 1 つにマージする必要があります。
PHP と Codeigniter を使用します。誰かが私の問題の解決策を知っていますか?
複数のPDFファイルを1つに結合したい。PDF ファイルは異なるサイトにあるため、最初にダウンロードして 1 つにマージする必要があります。
PHP と Codeigniter を使用します。誰かが私の問題の解決策を知っていますか?
はい。私はpdfをマージしました。fpdfおよびfpdiライブラリを取得し、コード イグナイターのサード パーティ フォルダーに配置します。その場合は、fpdfi のマニュアルを読んでドキュメントをマージするだけです。これを使用してライブラリをセットアップします
require_once("application/third_party/fpdf/fpdf.php");//http://www.fpdf.org/
require_once("application/third_party/fpdi/FPDI_Protection.php");//http://www.setasign.de/products/pdf-php-solutions/fpdi/
次に、このコードのスニペットで、それがどのように機能するかがわかります。わかりやすくするために、このセクションを編集したことに注意してください。この例では、pdf ファイルをストリーミングします。ファイルを別の場所に簡単に保存することもできます。
$files = array(<file full paths here>);
$pdf = new FPDI_Protection();
if ($data->password)
{
$pdf->setProtection(array(),$data->password);
}
for ($i = 0; $i < count($files); $i++ )
{
$pagecount = $pdf->setSourceFile($files[$i]);
for($j = 0; $j < $pagecount ; $j++)
{
$tplidx = $pdf->importPage(($j +1), '/MediaBox'); // template index.
$pdf->addPage('L','A4');// orientation can be P|L
$pdf->useTemplate($tplidx, 0, 0, 0, 0, TRUE);
}
unlink($files[$i]); // you may not want to unlink the files!
}
$dt = new DateTime(NULL, new DateTimeZone($data->user->timezone));
// set the metadata.
$pdf->SetAuthor($data->user->user_name);
$pdf->SetCreator('website name!');
$pdf->SetTitle('PDF, created: '.$dt->format(MYHMRS_DATETIME_FRIENDLY));
$pdf->SetSubject('PDF subject !');
$pdf->SetKeywords('website name!'.", keywords! ".$data->user->user_name);
$output = $pdf->Output('', 'S');
$name = "PDF".'-'.$dt->format('ymd').'.pdf';
$this->output
->set_header("Content-Disposition: filename=$name;")
->set_content_type('Application/pdf')
->set_output($output);
他のサイトからPDFを取得する場合は、まずこれが許可されていることを確認してから、cURLを使用してください。(URLをコピー)。これを行うための codeigniter ライブラリがあるか、 PHP ライブラリを使用できます。