RepairQDFFile

Depuração, Reparo de documentos

Descrição

Repara um PDF QDF depois de edições humanas terem mudado comprimentos de streams ou posições de bytes de objetos

A passada de reparo varre as fronteiras dos objetos sem confiar em offsets obsoletos de referências cruzadas, recalcula os comprimentos de streams, atualiza objetos de comprimento indiretos e reconstrói a free list, a tabela de referências cruzadas, o trailer, o startxref e o /Size

Dados de fluxo contendo linhas endstream e endobj são preservados quando o objeto tem um marcador de fluxo QDF inequívoco. Entrada QDF inválida e marcadores repetidos para o mesmo objeto são rejeitados antes que o destino seja aberto, preservando um arquivo de saída existente mesmo durante o reparo in-loco

Sintaxe

Delphi

Function TPDFlib.RepairQDFFile(Const InputFileName, OutputFileName: WideString): Integer;

DLL

int DLRepairQDFFile(int InstanceID, const wchar_t* InputFileName, const wchar_t* OutputFileName);

ActiveX

Function PDFlib::RepairQDFFile(InputFileName As String, OutputFileName As String) As Long

Parâmetros

InputFileNameThe edited QDF PDF
OutputFileNameO caminho do PDF reparado, que pode ser igual ao caminho de entrada

Valores retornados

1The edited QDF was repaired
0A entrada não era um QDF reparável, ou o destino não pôde ser gravado

Erros

LastErrorCode 106 reporta estrutura QDF inválida, 107 reporta falha de reparo, e 305 reporta falha de gravação da saída

Observações

O reparo in-place é seguro porque a origem completa é lida antes de o destino ser substituído