Digitalizar Livro Escaneado para PDF Digital
A conversa deve ser simples
O usuário pode dizer apenas: "Por favor, transforme este PDF de livro em um livro digital confortável de ler, seguindo https://github.com/MuhtajinMukhtar/scan-book-to-digital-pdf." Eles podem anexar um PDF. Não exija que saibam palavras como OCR, PP-StructureV3, SHA-256 ou linha de comando.
- Se nenhum PDF for anexado, peça o PDF.
- Por padrão, use um layout fiel, fonte semelhante à original e início de parágrafo como no original. Se necessário, faça uma pergunta amigável de cada vez, em termos simples: "Quer fonte como de livro comum ou estilo moderno?", "Tamanho da letra igual ao original ou maior?", "Parágrafo começando com recuo ou alinhado à esquerda?". Ofereça "deixe como está". Não faça todas as perguntas quando as opções padrão forem suficientes.
- Relate o progresso em linguagem simples: páginas verificadas, páginas incertas, PDF para revisão. Mantenha logs técnicos em arquivos de trabalho, não no chat do usuário.
- Não force o usuário a escolher manualmente o mecanismo de OCR. Em um Mac compatível, use ambos os mecanismos descritos abaixo.
Proteção da fonte e preferências
Registre a contagem de páginas, o SHA-256 original, metadados do arquivo e destino da saída. Nunca sobrescreva o original ou uma versão anterior aprovada. Use o mapeamento exato de página fonte a menos que o usuário peça explicitamente por repaginação. Respeite preferências explícitas: serifa no corpo do texto (Georgia se instalada e licenciada, senão serifa aberta) ou sem serifa; tamanho da fonte estimado pela fonte ou especificado; recuo da primeira linha conforme original / sim / não. Preserve cabeçalhos, itálicos, fotos, diagramas, tabelas, logotipos, citações, formulários, rodapés e ordem de leitura. Nunca redistribua digitalizações protegidas por direitos autorais ou arquivos de fonte.
Pipeline dual-OCR para Mac (obrigatório para execução completa)
- Configure um ambiente Python isolado no Mac usando
references/mac-setup.md. Verifique se o Apple Vision e o PaddleOCR PP-StructureV3 estão realmente instalados antes de processar. Não use sistemas em produção ou alterações globais de pacotes. - Execute
python scripts/mac_hybrid_ocr.py BOOK.pdf --work-dir ./work. Isso chamascripts/ocr_book.pycom o Apple Vision, depois o PP-StructureV3 nas mesmas imagens de página em cache, salva o JSON bruto do Paddle e Markdown, e gera relatórios de comparação por página emwork/fusion/. - Leia o JSON bruto do Paddle,
overall_ocr_res.rec_texts, e não apenas o Markdown gerado. O protótipo bem-sucedido recuperou sete linhas omitidas pelo Markdown do Paddle em um piloto de cinco páginas; nunca presuma que o Markdown está completo. Verifiquepaddle_raw_not_in_markdown,paddle_not_in_apple,apple_not_in_paddlee avisos de variação ortográfica/pronúncia. Todos são candidatos a revisão, não correções aprovadas automaticamente. - Confirme textos ausentes e nomes disputados contra a imagem original da página antes de aplicar uma correção. Compare ambos os motores linha por linha; nenhum motor é autoridade absoluta. Preserve a incerteza em um registro de problemas por página. Não invente texto baseado apenas no contexto.
- Classifique cada página e componha o texto digitalizado a partir da ordem de leitura verificada, com tamanho, fonte, recuo de parágrafo e corpo justificado escolhidos. Use fotografias/ilustrações originais recortadas. Veja
references/page-archetypes.md. Para páginas que não podem ser reconstruídas com segurança, preserve a imagem original com uma camada de OCR selecionável e marque explicitamente essa página como fallback de digitalização pesquisável. - Escreva uma entrada de manifesto para cada página original: página fonte/saída, tipo, mecanismos de OCR, correções aceitas, verificações de imagem, status digital ou de digitalização pesquisável, exceções e status de revisão visual.
- Use
scripts/pdf_audit.pypara verificar cobertura do texto fonte, mapeamento de páginas, fontes incorporadas, ausência de páginas/imagens em branco ou cortadas e comparação visual fonte/saída. Leiareferences/qa-and-handoff.md. Não omita falhas para relatar sucesso. - Entregue um PDF de revisão e um resumo conciso das páginas pendentes. Marque como final somente após o usuário aceitar o resultado editorial. Execute
scripts/lossless_optimize.pyapenas em uma cópia e verifique a paridade de renderização/texto.
Limites operacionais
- Esta não é uma ferramenta de recomposição universal com um clique: o agente de IA deve realizar a reconstrução editorial de páginas complexas.
mac_hybrid_ocr.pyprepara as comparações de fonte; ele não gera o livro final por si só. - Se o Paddle não puder ser executado no Mac, não continue silenciosamente apenas com o Apple Vision fingindo que a saída passou pelo dual-OCR; relate o problema de instalação e ofereça ao usuário um próximo passo seguro.
- Se o ambiente atual do ChatGPT Work ou Codex não puder executar software Mac, avise brevemente. Obtenha um ambiente de execução Mac autorizado em vez de fabricar resultados de OCR.
- Preserve identidade do cache/fonte. Nunca sobrescreva automaticamente resultados de OCR de outra fonte. Não publique arquivos privados no repositório.
- Use
--compare-onlypara reavaliar caches existentes sem executar o OCR novamente.