Imagick'teki iki pdf sayfa oluşturma

5 Cevap php

Şu anda ben bu işlevle Imagick'teki görüntüleri PDF dosyaları oluşturabilirsiniz

$im->setImageFormat("pdf");
$im->writeImage("file.pdf");

Ve bu gibi imagick ile birden fazla sayfayı almak mümkün

$im = new imagick("file.pdf[0]");
$im2 = new imagick("file.pdf[1]");

But is it possible to save two image objects to two pages? (example of what i am thinking, its not possible like this)

$im->setImageFormat("pdf");
$im->writeImage("file.pdf[0]");

$im2->setImageFormat("pdf");
$im2->writeImage("file.pdf[1]");

5 Cevap

Ben bu uzun nedeniyle geçmiş olduğunu biliyorum, ama ben aynı şeyi yapmaya çalışıyordu bu sonuç geldi. Burada PHP ve Imagick'teki bir çok sayfalı PDF dosyası oluşturmak nasıl.

    $images = array(
    'page_1.png',
    'page_2.png'
);
$pdf = new Imagick($images);
$pdf->setImageFormat('pdf');
if (!$pdf->writeImages('combined.pdf', true)) {
    die('Could not write!');
}

Bu çalışma mı?

$im->setImageFormat("pdf");
$im->writeImage("file1.pdf");

$im2->setImageFormat("pdf");
$im2->writeImage("file2.pdf");

exec("convert file*.pdf all.pdf");

CAM::PDF bu gibi düşük seviyeli PDF manipülasyon için saf-Perl çözümdür. Sen appendpdf.pl komut satırı aracını kullanın veya bu gibi programlı bunu ya:

use CAM::PDF; my $doc1 = CAM::PDF->new('file1.pdf'); my $doc2 = CAM::PDF->new('file2.pdf'); $doc1->appendPDF($doc2); $doc1->cleanoutput('out.pdf');

ImageMagick (ben ... bir ImageMagick uzman değilim) bir dosya yerine bir dize yazmak nasıl anlamaya o zaman Perl tüm tutarak bazı performans yükü kaydedin.

(CAM :: PDF yazarı olduğum Bu özgür yazılımdır:. GPL + Artistic çift lisanslı).

Kabul cevabı bir sonucu olarak, benim için çalışma değildi, hep böyle, ilk dosya tanıtıcı almak zorunda bu işi yapmak için, bir sayfa pdf (kurucusundan son resim) oluşturulur:

$images = array(
  'img1.png', 'img2.png'
); 
$fp = fopen('combined.pdf', 'w');
$pdf = new Imagick($images);
$pdf->resetiterator();
$pdf->setimageformat('pdf');
$pdf->writeimagesfile($fp);
fclose($fp);

Ben php veya bu Imagick kütüphane bilmiyorum, ancak harici bir çağrı programı kabul edilebilir olup olmadığını ben programı pdfjoin pdf dosyaları birleştirmek için tavsiye ederim.

Bu pdflatex bir bağımlılığı var, bu yüzden bu size ekstra lateks şeyler yüklemek zorunda kalabilirsiniz bir sunucu üzerinde çalıştırmak niyetinde şeydir, ama pdfjoin gelen sonuç çok iyi ise, yani ben buna değer olacağını düşünüyorum.