> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Compatibilidad de los objetos relacionados con documentos con la versión 10

> Cambios de compatibilidad de la API de objetos relacionados con documentos entre ABBYY FineReader Engine 12 y 10: se eliminaron DocumentStructure y PageStructure; acceso basado en layout a través de FRPage.

En esta sección se describen todos los cambios en los objetos relacionados con documentos que pueden requerir modificaciones en el código fuente de sus aplicaciones.

* Se ha eliminado la API que proporcionaba acceso a la estructura lógica del documento (DocumentStructure, PageStructure y sus subobjetos). La edición de las propiedades y del contenido del documento mediante los objetos eliminados podía dar lugar a resultados impredecibles durante la exportación. Si necesita verificar o posprocesar los resultados del reconocimiento, trabaje con los datos a través del subobjeto [Layout](/es/fine-reader/engine/api-reference/document-related-objects/frpage#layout) de cada [FRPage](/es/fine-reader/engine/api-reference/document-related-objects/frpage) y, cuando termine, llame a cualquiera de los métodos que realizan la síntesis del documento. La estructura lógica del documento se volverá a crear y se utilizará en la fase de exportación, aunque ya no estará disponible para su edición mediante la API de FineReader Engine. Es posible que las versiones futuras de ABBYY FineReader Engine proporcionen acceso de solo lectura a parte de la estructura lógica del documento.

<table>
  <thead>
    <tr>
      <th>
        <p>
          <strong>Objeto/Enumeración</strong>
        </p>
      </th>

      <th>
        <p>
          <strong>Propiedad/Método/Constante</strong>
        </p>
      </th>

      <th>
        <p>
          <strong>¿Qué ha ocurrido?</strong>
        </p>
      </th>

      <th>
        <p>
          <strong>Comentario</strong>
        </p>
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td rowspan="5">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument">
              FRDocument
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>AddImage</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          El nuevo nombre del método es{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/addimagedocument-method">
              AddImageDocument
            </a>
          </strong>

          . Se ha renombrado para dejar claro que trabaja con{" "}
          <strong>ImageDocument</strong>, no con un archivo de imagen del disco.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/addimagefilefrommemory-method">
              AddImageFileFromMemory
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Número de parámetros de entrada modificado</p>
      </td>

      <td>
        <ul>
          <li>
            El puntero a un búfer de memoria que contiene datos de imagen se pasa como{" "}

            <strong>
              <a href="/es/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">
                \_\_int64
              </a>
            </strong>

            . Este cambio se ha realizado para admitir sistemas operativos de 64 bits.
          </li>

          <li>
            La variable <em>fileFormat</em> ya no se utiliza como parámetro de entrada. El formato del archivo se determina a partir del parámetro <em>fileName</em>.
          </li>

          <li>
            Los siguientes tipos de archivo pueden abrirse desde la memoria.

            <ul>
              <li>PDF,</li>
              <li>DjVu (Windows)</li>
              <li>WDP (Windows)</li>
            </ul>
          </li>
        </ul>

        <p>
          Por este motivo, el método ahora recibe el puntero a la interfaz{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/iimagepasswordcallback">
              IImagePasswordCallback
            </a>
          </strong>

          , necesaria para abrir archivos PDF protegidos con contraseña.
        </p>

        <ul>
          <li>
            El método también recibe un objeto{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/intscollection">
                IntsCollection
              </a>
            </strong>

            {" "}

            que especifica qué páginas de un archivo de varias páginas deben añadirse.
          </li>
        </ul>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/analyze-method">
              Analyze
            </a>
          </strong>
        </p>

        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/analyzepages-method">
              AnalyzePages
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Número de parámetros de entrada modificado</p>
      </td>

      <td>
        <p>
          Estos métodos reciben como parámetros de entrada un conjunto de subobjetos del objeto{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams">
              PageProcessingParams
            </a>
          </strong>

          : solo se pasan a estos métodos los parámetros necesarios para el análisis de páginas.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>AnalyzeAndRecognize</strong>
        </p>

        <p>
          <strong>AnalyzeAndRecognizePages</strong>
        </p>
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          La misma funcionalidad está disponible a través de los métodos{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/process-method">
              Process
            </a>
          </strong>

          {" "}

          y{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/processpages-method">
              ProcessPages
            </a>
          </strong>

          {" "}

          del objeto <strong>FRDocument</strong>, con la propiedad{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams#performsynthesis">
              PerformSynthesis
            </a>
          </strong>

          {" "}

          del parámetro de entrada <strong>DocumentProcessingParams</strong> establecida en FALSE.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/process-method">
              Process
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Número de parámetros de entrada modificado</p>
      </td>

      <td>
        <p>
          El método recibe todos los parámetros necesarios en un único objeto{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/documentprocessingparams">
              DocumentProcessingParams
            </a>
          </strong>

          .
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/ifrdocumentevents">
              IFRDocumentEvents
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>OnRecognizerTip</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          El nuevo nombre del método es{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/ifrdocumentevents/onwarning-method">
              OnWarning
            </a>
          </strong>

          . Puede enviar advertencias y sugerencias del reconocedor al cliente, y también procesar mensajes del sistema para evitar que la aplicación aparezca como "no responde".
        </p>

        <p>
          Además, incluye un parámetro adicional que especifica el índice de la página del documento a la que se refiere la advertencia.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>Artefact</strong>
        </p>

        <p>
          <strong>BackgroundLayer</strong>
        </p>

        <p>
          <strong>Caption</strong>
        </p>

        <p>
          <strong>Captions</strong>
        </p>

        <p>
          <strong>DocumentElement</strong>
        </p>

        <p>
          <strong>DocumentSection</strong>
        </p>

        <p>
          <strong>DocumentStream</strong>
        </p>

        <p>
          <strong>DocumentStructure</strong>
        </p>

        <p>
          <strong>Footnote</strong>
        </p>

        <p>
          <strong>Footnotes</strong>
        </p>

        <p>
          <strong>FootnoteSeries</strong>
        </p>

        <p>
          <strong>FootnoteSeriesArray</strong>
        </p>

        <p>
          <strong>GlobalStyleStorage</strong>
        </p>

        <p>
          <strong>Incut</strong>
        </p>

        <p>
          <strong>IncutGroup</strong>
        </p>

        <p>
          <strong>IncutGroups</strong>
        </p>

        <p>
          <strong>MainText</strong>
        </p>

        <p>
          <strong>PageBlackSeparator</strong>
        </p>

        <p>
          <strong>PageElement</strong>
        </p>

        <p>
          <strong>PageElements</strong>
        </p>

        <p>
          <strong>PageSection</strong>
        </p>

        <p>
          <strong>PageSections</strong>
        </p>

        <p>
          <strong>PageStream</strong>
        </p>

        <p>
          <strong>PageStructure</strong>
        </p>

        <p>
          <strong>RunningTitle</strong>
        </p>

        <p>
          <strong>RunningTitleSeries</strong>
        </p>

        <p>
          <strong>RunningTitleSeriesArray</strong>
        </p>

        <p>
          <strong>RunningTitleSeriesText</strong>
        </p>

        <p>
          <strong>StreamElementLocationParams</strong>
        </p>

        <p>
          <strong>TextBarcode</strong>
        </p>

        <p>
          <strong>TextPicture</strong>
        </p>

        <p>
          <strong>TextTable</strong>
        </p>

        <p>
          <strong>TextTableCell</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          Estos objetos representaban la estructura lógica del documento y
          sus distintas partes. La edición de la estructura del documento ya no
          es compatible, ya que su uso incorrecto podría afectar la apariencia del
          documento exportado; cualquier verificación de texto u otras modificaciones
          pueden realizarse a través de la API del documento (

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument">
              FRDocument
            </a>
          </strong>

          ,{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage">
              FRPage
            </a>
          </strong>

          {" "}

          y subobjetos). Las versiones futuras de ABBYY FineReader Engine podrían
          ofrecer acceso de solo lectura a algunas partes de la estructura lógica del documento.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>BorderFlags</strong>
        </p>

        <p>
          <strong>CaptionPositionEnum</strong>
        </p>

        <p>
          <strong>DocumentElementTypeEnum</strong>
        </p>

        <p>
          <strong>FootnoteNumberingTypeEnum</strong>
        </p>

        <p>
          <strong>FrameHorizontalReferenceEnum</strong>
        </p>

        <p>
          <strong>FrameVerticalReferenceEnum</strong>
        </p>

        <p>
          <strong>PageBlackSeparatorRoleEnum</strong>
        </p>

        <p>
          <strong>PageBlackSeparatorTypeEnum</strong>
        </p>

        <p>
          <strong>PageElementTypeEnum</strong>
        </p>

        <p>
          <strong>StreamElementAlignmentEnum</strong>
        </p>

        <p>
          <strong>StreamTypeEnum</strong>
        </p>

        <p>
          <strong>TableCellVertAlignmentEnum</strong>
        </p>

        <p>
          <strong>TextTableSeparatorTypeEnum</strong>
        </p>

        <p>
          <strong>TextWrappingEnum</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          Estas enumeraciones eran utilizadas por los objetos de estructura del documento
          que ya no están disponibles.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="6">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage">
              FRPage
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/analyze-method">
              Analyze
            </a>
          </strong>
        </p>

        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/analyzeregion-method">
              AnalyzeRegion
            </a>
          </strong>
        </p>

        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/analyzetable-method">
              AnalyzeTable
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Comportamiento modificado</p>
      </td>

      <td>
        <ul>
          <li>
            Los métodos reciben como parámetros de entrada un conjunto de subobjetos del objeto{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams">
                PageProcessingParams
              </a>

              {" "}
            </strong>

            — solo se pasan a estos métodos los parámetros necesarios para el análisis de página.
          </li>

          <li>
            El método <strong>Analyze</strong> ya no realiza la corrección de
            la orientación de página, la inversión ni las distorsiones geométricas.
            El preprocesamiento de imágenes es ahora una etapa de procesamiento independiente. Para corregir
            la orientación, la inversión y las distorsiones geométricas, utilice los métodos
            correspondientes del objeto <strong>FRPage</strong>, o realice todas estas
            operaciones en conjunto mediante el método{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/preprocess-method">
                IFRPage::Preprocess
              </a>
            </strong>

            .
          </li>
        </ul>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>AnalyzeAndRecognize</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          El nuevo nombre del método es{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/preprocessanalyzerecognize-method">
              PreprocessAnalyzeRecognize
            </a>
          </strong>

          . La única diferencia respecto al método anterior es que ahora este método
          recibe un único parámetro de entrada de tipo{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams">
              PageProcessingParams
            </a>
          </strong>

          , que contiene todos los ajustes necesarios para el procesamiento.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>CorrectResolution</strong>
        </p>
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          Utilice el{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/detectresolution-method">
              IFRPage::DetectResolution
            </a>
          </strong>

          {" "}

          and{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/changeresolution-method">
              IImageDocument::ChangeResolution
            </a>
          </strong>

          {" "}

          en su lugar. Esto permite al usuario verificar la resolución
          sugerida por el

          <strong>
            {" "}

            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/detectresolution-method">
              DetectResolution
            </a>
          </strong>

          {" "}

          antes de aplicarla a la imagen. Es posible que la corrección propuesta
          sea tan pequeña que no valga la pena aplicarla.
        </p>

        <p>
          Sin embargo, tenga en cuenta que aún puede corregir la resolución automáticamente
          durante el preprocesamiento estableciendo la propiedad <strong>CorrectResolution</strong>{" "}
          en{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pagepreprocessingparams">
              PagePreprocessingParams
            </a>
          </strong>

          .
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>RemoveGeometricalDistortions</strong>
        </p>
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          Utilice el método <strong>IImageDocument::RemoveGeometricalDistortions</strong>{" "}
          en su lugar.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/flush-method">
              Flush
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Número de parámetros de entrada modificado</p>
      </td>

      <td>
        <p>
          Este método recibe un parámetro de entrada booleano que especifica si los
          datos deben guardarse en disco. Esto resulta útil cuando los datos no han
          cambiado, ya que el método funcionará mucho más rápido cuando no es necesario guardar.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>FlushExt</strong>
        </p>
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          El método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpage/flush-method">
              Flush
            </a>
          </strong>

          {" "}

          tiene la misma firma que el método <strong>FlushExt</strong>.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/ifrpageevents">
              IFRPageEvents
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>OnRecognizerTip</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          El nuevo nombre del método es{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/ifrpageevents/onwarning-method">
              OnWarning
            </a>
          </strong>

          . Puede enviar advertencias y sugerencias del reconocedor al cliente,
          y también procesar mensajes del sistema para evitar que la
          aplicación aparezca como "sin respuesta".
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpages">
              FRPages
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>Find</strong>
        </p>

        <p>
          <strong>Remove</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          Los nuevos nombres de los métodos son{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/frpages/indexof-method">
              IndexOf
            </a>
          </strong>

          ,{" "}

          <strong>
            <a href="/es/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/deleteat-method">
              DeleteAt
            </a>
          </strong>

          . Los métodos de todas las colecciones han sido renombrados para mantener uniformidad.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="2">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/documentinformationdictionary">
              DocumentInformationDictionary
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>Add</strong>
        </p>

        <p>
          <strong>CreateDocumentInformationDictionaryItem</strong>
        </p>

        <p>
          <strong>Insert</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          Utilice el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/addnew-method">
              AddNew
            </a>
          </strong>

          {" "}

          en su lugar. Los métodos de todas las colecciones han sido renombrados para mantener uniformidad.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>CopyFrom</strong>
        </p>
      </td>

      <td>
        <p>Eliminado</p>
      </td>

      <td>
        <p>
          Este método ya no es compatible. Para copiar los valores de los elementos
          de otra colección, puede agregar nuevos elementos a la colección
          mediante el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/addnew-method">
              AddNew
            </a>
          </strong>

          {" "}

          y especificar los mismos valores de los elementos.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="2">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/document-related-objects/authorslist">
              AuthorsList
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>Add</strong>
        </p>

        <p>
          <strong>CreateAuthorInfo</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          Utilice el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/supplementary-objects-and-methods/addnew-method">
              AddNew
            </a>
          </strong>

          {" "}

          en su lugar. Los métodos de todas las colecciones han sido renombrados para mantener uniformidad.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>Remove</strong>
        </p>

        <p>
          <strong>RemoveAll</strong>
        </p>
      </td>

      <td>
        <p>Renombrado</p>
      </td>

      <td>
        <p>
          Los nuevos nombres de los métodos son{" "}

          <strong>
            <a href="/es/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/deleteat-method">
              DeleteAt
            </a>
          </strong>

          ,{" "}

          <strong>
            <a href="/es/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/deleteall-method">
              DeleteAll
            </a>
          </strong>

          . Los métodos de todas las colecciones han sido renombrados para mantener uniformidad.
        </p>
      </td>
    </tr>
  </tbody>
</table>
