> ## 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 imágenes en la versión 10

> Cambios de compatibilidad de la API de objetos relacionados con imágenes entre las versiones 12 y 10 de ABBYY FineReader Engine: ImageDocument, PrepareImageMode y actualizaciones relacionadas.

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

<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="2">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image">
              Image
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>ImageDocument</strong>
        </p>
      </td>

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

      <td>
        <p>
          Esta propiedad ya no es compatible. El objeto{" "}
          <strong>Image</strong> solo puede obtenerse a través del objeto padre{" "}

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

          ; si es necesario, puede almacenar usted mismo la referencia al objeto padre.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image/writetofile-method">
              WriteToFile
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>El método no admite guardar en formato PDF.</p>
      </td>

      <td>
        <p>Para guardar una imagen en formato PDF, siga el procedimiento siguiente:</p>

        <ol>
          <li value="1">
            Cree el objeto{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams">
                PDFExportParams
              </a>
            </strong>

            {" "}

            mediante el método <strong>IEngine::CreatePDFExportParams</strong>.
          </li>

          <li value="2">
            Establezca su propiedad{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams#textexportmode">
                TextExportMode
              </a>
            </strong>

            {" "}

            en{" "}

            <a href="/es/fine-reader/engine/api-reference/enumerations/pdfexportmodeenum#imageonly">
              PEM\_ImageOnly
            </a>

            .
          </li>

          <li value="3">
            Utilice estos parámetros durante la exportación al formato PDF (por ejemplo, con el método{" "}

            <strong>
              <a href="/es/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method">
                IFRDocument::Export
              </a>
            </strong>

            ).
          </li>
        </ol>
      </td>
    </tr>

    <tr>
      <td />

      <td>
        <p>
          <strong>GetPicture</strong>
        </p>

        <Note>Windows</Note>
      </td>

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

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

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image/getbitmap-method">
              GetBitmap
            </a>
          </strong>

          , lo que pone de manifiesto que el método devuelve{" "}

          <a href="/es/fine-reader/engine/api-reference/enumerations/bitmapbitsformatenum">
            datos de mapa de bits
          </a>

          . Los parámetros del método han cambiado:
        </p>

        <ul>
          <li>
            Este método no recibe como parámetro de entrada los indicadores para la conversión de color de la imagen. Para obtener un mapa de bits en escala de grises de una imagen, puede trabajar con el plano de imagen en escala de grises de <strong>ImageDocument</strong> (

            <strong>
              <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument#grayimage">
                IImageDocument::GrayImage
              </a>
            </strong>

            ) y llamar al método <strong>GetBitmap</strong> sobre él.
          </li>

          <li>
            El identificador del mapa de bits de salida se devuelve como el objeto{" "}

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

            . Este objeto gestiona la asignación de memoria y permite evitar pérdidas de memoria al trabajar con recursos en memoria. También proporciona un método para la conversión a{" "}

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

            .
          </li>

          <li>
            El formato del mapa de bits de salida ha cambiado. Ahora cumple con el estándar HBITMAP y coincide con los datos de mapa de bits de entrada para otros métodos de FineReader Engine.
          </li>
        </ul>
      </td>
    </tr>

    <tr>
      <td>
        <br />
      </td>

      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image/estimatebitmapsize-method">
              EstimateBitmapSize
            </a>
          </strong>
        </p>

        <Note>Windows</Note>
      </td>

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

      <td>
        <p>
          Este método no recibe como parámetro de entrada los indicadores para la conversión de color de la imagen.
        </p>

        <p>
          Este método estima el tamaño de memoria que debe asignarse para el mapa de bits devuelto por el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image/getbitmap-method">
              GetBitmap
            </a>
          </strong>

          {" "}

          al invocarse con los mismos parámetros. Por lo tanto, sus parámetros de entrada son análogos a los de <strong>GetBitmap</strong>.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="7">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument">
              ImageDocument
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>ConvertCoordinates</strong>
        </p>
      </td>

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

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

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/coordinatesconverter/convertcoordinates-method">
              ConvertCoordinates
            </a>
          </strong>

          {" "}

          del objeto{" "}

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

          . Este método funciona de la misma manera que el anterior, pero el nuevo objeto es más flexible y permite almacenar la información sobre el estado de modificación de la imagen de forma independiente. Tenga en cuenta que este método considera todas las modificaciones de la imagen.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>DescreenImage</strong>
        </p>
      </td>

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

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

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/smoothtexture-method">
              SmoothTexture
            </a>
          </strong>

          . Este nombre refleja mejor el propósito del método que el anterior.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>EvenBrightness</strong>
        </p>
      </td>

      <td>
        <p>Renamed, input parameters number changed</p>
      </td>

      <td>
        <p>
          The new name of this method is{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/equalizebrightness-method">
              EqualizeBrightness
            </a>
          </strong>

          . This name reflects the purpose of the method better than the old
          one.
        </p>

        <p>
          The method takes as an input parameter a Boolean value which specifies
          whether the background of the image is white. This additional
          information can help produce a clear, high-contrast image.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>RemoveCameraBlur</strong>
        </p>
      </td>

      <td>
        <p>Renamed</p>
      </td>

      <td>
        <p>
          The new name of this method is{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/removemotionblur-method">
              RemoveMotionBlur
            </a>
          </strong>

          . This name reflects the purpose of the method better than the old
          one.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>SubtractColor</strong>
        </p>
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          Instead use the{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/removecolorobjectsex-method">
              RemoveColorObjectsEx
            </a>
          </strong>

          {" "}

          method, which allows you to remove objects of several specified hues
          at once, and also receive the image of removed objects.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/imagedocument/removegarbage-method">
              RemoveGarbage
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>Behavior changed</p>
      </td>

      <td>
        <p>
          This method still searches for garbage on the black-and-white plane,
          but removes it from all color planes of the image.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>RemoveCameraNoise</strong>
        </p>
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          The method is no longer in use. Use the{" "}

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

          {" "}

          method en su lugar. The new method can remove not only ISO noise, but also
          strongly correlated noise that can appear on overcompressed JPEG
          images.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>GetPictureFlags</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          This enumeration is no longer in use. The methods that used these
          flags do not perform the color conversions now.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>ImageDocumentsCollection</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          The object is no longer in use. The methods that used this object have
          been changed or removed. See details for the methods that used this
          object.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/enumerations/imagetypeenum">
              ImageTypeEnum
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>IT\_Deskewed</p>
      </td>

      <td>
        <p>Renamed</p>
      </td>

      <td>
        <p>
          The new name of the constant is IT\_Modified. The constant is used
          to denote any modified image, not only a deskewed image.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>PdfExtendedParams</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          The object is no longer in use. To save an image to PDF format, use
          the export methods with appropriate parameters (

          <a href="/es/fine-reader/engine/api-reference/enumerations/pdfexportmodeenum#imageonly">
            PDFExportModeEnum::PEM\_ImageOnly
          </a>

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

    <tr>
      <td>
        <p>
          <strong>MemoryImageFormatEnum</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          Use{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/enumerations/bitmapbitsformatenum">
              BitmapBitsFormatEnum
            </a>
          </strong>

          {" "}

          en su lugar.<strong> </strong>The format interpretation has been changed.
        </p>

        <p>
          For <strong>Windows</strong>: Now memory image format is the same for
          input of methods consuming bitmap data (such as{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/engine-object-iengine-interface/processing-methods/openbitmapbits-method">
              OpenBitmapBits
            </a>
          </strong>

          {" "}

          método del{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/engine-object-iengine-interface">
              Engine
            </a>
          </strong>

          {" "}

          object) and for output of other methods, for example, the{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/image/getbitmap-method">
              GetBitmap
            </a>
          </strong>

          {" "}

          método del{" "}

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

          {" "}

          object. So you do not need to convert from one interpretation to
          another.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="3">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/prepareimagemode">
              PrepareImageMode
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>CorrectSkewMode</strong>
        </p>
      </td>

      <td>
        <p>Removed</p>
      </td>

      <td>
        <p>
          Use the{" "}

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

          {" "}

          property of the{" "}

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

          {" "}

          en su lugar.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>CorrectSkewByBlackSquaresHorizontally</strong>
        </p>

        <p>
          <strong>CorrectSkewByBlackSquaresVertically</strong>
        </p>

        <p>
          <strong>CorrectSkewByHorizontalLines</strong>
        </p>

        <p>
          <strong>CorrectSkewByHorizontalText</strong>
        </p>

        <p>
          <strong>CorrectSkewByVerticalLines</strong>
        </p>

        <p>
          <strong>CorrectSkewByVerticalText</strong>
        </p>
      </td>

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

      <td>
        <p>
          Utilice la propiedad{" "}

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

          {" "}

          del objeto{" "}

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

          {" "}

          en su lugar.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>ImageCompression</strong>
        </p>
      </td>

      <td>
        <p>Renombrado, tipo modificado</p>
      </td>

      <td>
        <p>
          Esta propiedad ahora se denomina{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/prepareimagemode#compressimage">
              CompressImage
            </a>
          </strong>

          {" "}

          y es de tipo{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/enumerations/threestatepropertyvalueenum">
              ThreeStatePropertyValueEnum
            </a>
          </strong>

          . El valor predeterminado funciona como antes.
        </p>
      </td>
    </tr>

    <tr>
      <td>
        <p>
          <strong>ImageCompressionEnum</strong>
        </p>
      </td>

      <td>
        <br />
      </td>

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

      <td>
        <p>La propiedad que usaba esta enumeración ahora tiene otro tipo.</p>
      </td>
    </tr>

    <tr>
      <td rowspan="2">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/trainingimage">
              TrainingImage
            </a>
          </strong>
        </p>
      </td>

      <td>
        <p>
          <strong>Height</strong>
        </p>

        <p>
          <strong>Width</strong>
        </p>
      </td>

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

      <td>
        <p>
          Especifique el ancho y el alto de la imagen de entrenamiento mediante el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/trainingimage/setbitmapbits-method">
              ITrainingImage::SetBitmapBits
            </a>
          </strong>

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

    <tr>
      <td>
        <p>
          <strong>SetImageData</strong>
        </p>
      </td>

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

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

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/trainingimage/setbitmapbits-method">
              ITrainingImage::SetBitmapBits
            </a>
          </strong>

          {" "}

          en su lugar. Este método difiere del anterior en los siguientes aspectos:
        </p>

        <ul>
          <li>
            El puntero a un búfer de memoria que contiene los 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 realizó para admitir sistemas operativos de 64 bits.
          </li>

          <li>
            El ancho y el alto de la imagen de entrenamiento se pasan como parámetros.
          </li>
        </ul>

        <p>
          También puede utilizar el nuevo método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/trainingimage/setimagedata-method">
              ITrainingImage::SetImageData
            </a>
          </strong>

          , que permite cargar una imagen de entrenamiento desde un documento de imagen existente.
        </p>
      </td>
    </tr>

    <tr>
      <td rowspan="2">
        <p>
          <strong>
            <a href="/es/fine-reader/engine/api-reference/image-related-objects/trainingimagescollection">
              TrainingImagesCollection
            </a>
          </strong>
        </p>
      </td>

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

        <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/insertat-method">
              InsertAt
            </a>
          </strong>

          ,{" "}

          <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>

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

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

      <td>
        <p>
          Este método ya no es compatible. Para crear una copia de la colección,
          puede crear una nueva colección mediante el método{" "}

          <strong>
            <a href="/es/fine-reader/engine/api-reference/engine-object-iengine-interface/creation-methods/createlessobjectgreater-methods">
              IEngine::CreateTrainingImagesCollection
            </a>
          </strong>

          {" "}

          y agregar los mismos elementos con el método{" "}

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

          .
        </p>
      </td>
    </tr>
  </tbody>
</table>
