コード例 #1
0
java_require("itext.jar");
/*
 * Concat: merge pdf files
 *
 * Usage: concat.php outfile.pdf file1.pdf file2.pdf ...
 */
array_shift($argv);
$argc--;
$outfile = $argv[0];
$args = $argv;
$pageOffset = 0;
$f = 1;
$master = new java("java.util.ArrayList");
while (--$argc) {
    $reader = new java("com.lowagie.text.pdf.PdfReader", $args[$f]);
    $reader->consolidateNamedDestinations();
    $n = java_values($reader->getNumberOfPages());
    $bookmarks = java("com.lowagie.text.pdf.SimpleBookmark")->getBookmark($reader);
    if (java_values($bookmarks) != null) {
        if ($pageOffset != 0) {
            java("com.lowagie.text.pdf.SimpleBookmark")->shiftPageNumbers($bookmarks, $pageOffset, null);
            $master->addAll($bookmarks);
        }
    }
    $pageOffset += $n;
    echo "There are " . $n . " pages in " . $args[$f];
    echo "\n";
    if ($f == 1) {
        $document = new java("com.lowagie.text.Document", $reader->getPageSizeWithRotation(1));
        $writer = new java("com.lowagie.text.pdf.PdfCopy", $document, new java("java.io.FileOutputStream", $outfile));
        $document->open();