J'essaie de mettre en œuvre la recherche en texte intégral en utilisant Quartz 2D mais c'est un cauchemar. je peux « extrait » texte de la page PDF à l'aide de l'opérateur PDF (TJ et d'autres ...)Pdf recherche plein texte sur iPad avec Quartz 2D
CGPDFOperatorTableRef myTable;
myTable = CGPDFOperatorTableCreate();
CGPDFOperatorTableSetCallback (myTable, "BT", &op_BT);
CGPDFOperatorTableSetCallback (myTable, "Td", &op_Td);
CGPDFOperatorTableSetCallback (myTable, "TD", &op_TD);
CGPDFOperatorTableSetCallback (myTable, "Tm", &op_Tm);
CGPDFOperatorTableSetCallback (myTable, "T*", &op_T);
CGPDFOperatorTableSetCallback (myTable, "TJ", &op_TJ);
CGPDFOperatorTableSetCallback (myTable, "Tf", &op_TF);
CGPDFOperatorTableSetCallback (myTable, "ET", &op_ET);
Mais dans le même temps, je dois souligner un match à la page PDF avec un certain rectangle comme il est fait dans Safari par exemple. Des suggestions comment implémenter cela? Y a-t-il des solutions qui ne nécessitent pas un tel travail?
Merci mtraut ... j'ai terminé pour obtenir du texte en utilisant l'opérateur TJ/Tj ... mais quand l'encodage de police est Identity-H. cela crée un problème pour obtenir du texte ... je ne sais pas comment obtenir du texte en utilisant le mappage ToUnicode? –
Il faudrait beaucoup de commentaires pour décrire la mécanique d'extraction de texte. Au lieu de cela, je voudrais que vous recommandiez la spécification PDF (** La référence complète **) ou une implémentation existante comme jPod. En Java, vous devriez avoir une bonne idée de la recherche de personnage. – mtraut
En bref: Si vous avez un ToUnicode, vous n'aurez pas besoin de l'encodage. Prenez l'entrée (éventuellement multi-octets!) Pour le caractère suivant et la carte via le ToUnicode. Ceci est un outil de cartographie multi-index sophistiqué - vous aurez le mettre en œuvre. Le résultat devrait être votre caractère unicoce – mtraut