PDDocSave занимает больше времени при сохранении файлов

Я обнаружил медлительность при вставке и сохранении файлов PDF с использованием новейших библиотек (APDFL15.0.4PlusP4a и APDFL15.0.4PlusP2e). Замедление происходит, когда количество страниц превышает 300.

Приведенный ниже код сохраняет документ на 450 страниц, используя PDDocSave, вставляя временный (накопленный) документ по 40 страниц каждый.

При замене на более старую версию (APDFL15.0.1PlusP1h) производительность была выше.

  // Assemble accumulated files
for(int j=1;j<=accumCount;j++)
{
sprintf(accumName,ACCUM_FILETEMPLATE, j);
TSTBUG1(1,"Opening accumulator :%s",accumName);
pdDoc2 = MyPDDocOpen(accumName);
if (!pdDoc2)
{
SYS_ERR "Unable to open file %s \n",accumName);
return PDFASSEMBLY_FAILURE;
}
PDDocInsertPages (pdDoc1,PDLastPage,pdDoc2, 0, PDAllPages,PDInsertAll, NULL,NULL,NULL,NULL);
TSTBUG1(1,"Inserting accumulator : %d\n",j);
PDDocRelease(pdDoc2);
PDDocClose(pdDoc2);
unlink (accumName);
}
TSTBUG1(20,"Saving file =>%s<=",ptrMasterPDFDocumentList->ptrHeader->strOutputPDFFile);
PDDocSave(pdDoc1,PDSaveFull|PDSaveLinearized,
ASPathFromPlatformPath(ptrMasterPDFDocumentList->ptrHeader->strOutputPDFFile),
ASGetDefaultFileSys(),NULL,NULL);

0

Решение

Обращались ли вы в наш отдел поддержки (tech_support@datalogics.com)?

То, что вы описываете, звучит как регрессия, однако трудно комментировать без документа, о котором идет речь. Вы можете попробовать использовать недавно добавленный флаг PDInsertDoNotResolveInvalidStructureParentReferences и посмотреть, поможет ли это.

Если нет, пожалуйста, свяжитесь с нами, и мы немедленно начнем официальное расследование.

0

Другие решения

Других решений пока нет …