Я использую FPDF и FPDI, чтобы извлечь 2 страницы из pdf-документа, который обычно составляет около 28 страниц. PDF-файлы - это в основном страница с изображением, заполняющим каждую страницу целиком и размером около 35-40 МБ.Размер выходного файла FPDI
При использовании FPDI, чтобы извлечь последние 2 страницы из полного документа и создать новый файл, размер файла нового 2-страничного файла остается практически таким же. Есть идеи, почему это может быть?
Вот основной код, используемый для выполнения извлекая:
public function extractPagesFromFile($file, $outputFileName, $numPages = 2) {
$pageCount = $this->_fpdf->setSourceFile($file);
if ($numPages < 0 || $numPages > $pageCount) {
return false;
}
for ($pageNo = $pageCount - $numPages + 1; $pageNo < $pageCount + 1; $pageNo++) {
$tplIdx = $this->_fpdf->ImportPage($pageNo);
if (!isset($s)) {
$s = $this->_fpdf->getTemplatesize($tplIdx);
}
$this->_fpdf->AddPage($s['w'] > $s['h'] ? 'L' : 'P', array($s['w'], $s['h']));
$this->_fpdf->useTemplate($tplIdx);
}
$this->_fpdf->Output('F', $outputFileName);
$this->_fpdf->cleanUp();
}
Спасибо за информацию. Я создаю оригинал pdf, который я извлекаю страницы из использования FPDI. Есть ли способ сделать это, чтобы заставить изображения не храниться в одном словаре, чтобы страницы могли быть извлечены индивидуально? –
Нет, потому что FPDF использует один глобальный словарь ресурсов. –