Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ускорьте Ссылку Платформы vImage Альфа-Ссылка Составления композита

Опции
Развертывание Target:

На этой странице
Язык:

Альфа-Ссылка Составления композита vImage

Альфа-составление композита (также известный как альфа-смешивание) является процессом разделения на уровни повторных изображений с альфа-значением для пикселя в данном уровне, указывающем, какая часть цветов от нижних уровней замечены через цвет на данном уровне. Функции, описанные в этой ссылке, воздействуют на альфа-значения пикселей или путем смешивания альфа-значений или отсечения их.

Большая часть альфы, составляющей функции, смешивает два входных изображения — главное изображение и нижнее изображение — для создания составного изображения. vImage платформа вычисляет альфа-значения составного изображения от альфа-значений входных изображений. Некоторые функции воздействуют на чередованные форматы (ARGB8888, ARGBFFFF, RGBA8888, RGBAFFFF), в то время как другие воздействуют на планарные форматы. Чередованные форматы содержат альфа-значение для каждого пикселя, но планарные форматы не делают. Для выполнения альфы, составляющей композит с планарными изображениями, необходимо предоставить альфа-информацию отдельно.

Альфа-функции составления композита по умолчанию выполняют мозаичное размещение внутренне и могут мультираспараллелить внутренне также. Если Вы планируете выполнить свое собственное мозаичное размещение или многопоточность, необходимо выключить vImage внутреннее мозаичное размещение и многопоточность путем предоставления kvImageDoNotTile отметьте как опция к функциям, которые Вы используете.

vImage платформа обеспечивает функции для альфы, составляющей композит и для предварительно умноженного альфа-случая и для nonpremultiplied альфа-случая. OS X v10.4 добавляет некоторые альфа-функции составления композита для общих смешанных случаев. Предварительное умножение пиксельных значений цвета связанной альфой оценивает результаты в большей вычислительной эффективности, чем обеспечение nonpremultiplied данные, особенно при составлении композита больше чем двух изображений. При использовании предварительно умноженной альфы все еще необходимо поддержать исходную информацию об альфе, так, чтобы можно было получить оригинал, nonpremultiplied значения пикселей при необходимости в них. Также необходимо предоставить исходное альфа-значение для нижнего слоя в составляющей композит работе.

Для форматов с плавающей точкой можно умножить значение цвета на альфа-значение непосредственно. Для целочисленных форматов, в которых оба значения находятся в диапазоне от 0 до 255, Вы умножаете цвет и альфа-значения, тогда необходимо масштабировать результат так, чтобы это было в от 0 до 255 диапазонов. Масштабирующееся вычисление:

  • scaledColor = (alpha * color + 127) / 255

Альфа, составляющая функции, использует буферную структуру vImage (vImage_Buffer— см. vImage Ссылку Типов данных и Констант) получить и предоставить данные изображения. Этот буфер содержит указатель на данные изображения, высоту и ширину (в пикселях) данных изображения и числа байтов строки. Вы фактически передаете указатель на буферную структуру vImage. Можно обеспечить указатель на ту же буферную структуру vImage для одного из исходных изображений и конечного изображения, потому что альфа-составление композита функционирует “работа на месте”. Т.е. исходные и конечные изображения могут занять ту же память, если они являются строго выровненным пикселем для пикселя.

Функции

  • Выполняет nonpremultiplied альфа-составление композита двух изображений ARGBFFFF, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_ARGBFFFF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_ARGBFFFF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Вычисление для каждого цветового канала:

    • resultAlpha = topAlpha + (1.0f - topAlpha) * bottomAlpha
    • resultColor = (topAlpha * topColor + (1.0f - topAlpha)
    • * bottomAlpha * bottomColor) / resultAlpha

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет nonpremultiplied альфа-составление композита двух изображений ARGB8888, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_ARGB8888(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_ARGB8888 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Вычисление для каждого цветового канала:

    • resultAlpha = (topAlpha * 255 + (255 - topAlpha)
    • * bottomAlpha + 127) / 255
    • resultColor = (topAlpha * topColor + (((255 - topAlpha)
    • * bottomAlpha + 127) / 255) * bottomColor + 127)
    • / resultAlpha

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет nonpremultiplied альфа-составление композита двух изображений PlanarF, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_PlanarF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ srcBottomAlpha: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_PlanarF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *srcBottomAlpha, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    srcBottomAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений нижнего исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для предрасчетных альфа-значений составного изображения. Необходимо предварительно вычислить эти значения путем вызывания функции vPremultipliedAlphaBlend_PlanarF. Посмотрите Обсуждение для подробных данных об использовании этой функции.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для источника, альфа-значений, места назначения и составных альфа-значений должны содержать ту же высоту и ширину.

    По причинам производительности эта функция не вычисляет альфа-значения для составного изображения; необходимо обеспечить их. Вы будете обычно вызывать эту функцию три раза, один раз для каждого цветового канала (красный, зеленый, синий). Поскольку каждый вызов использует то же альфа-значение, намного более эффективно для Вас предварительно вычислить альфа-значения с помощью функции vImagePremultipliedAlphaBlend_PlanarF, вместо того, чтобы иметь вычисление повторился три разаvImageAlphaBlend_PlanarF функция. Вызовите функцию vPremultipliedAlphaBlend_PlanarF использование показанных параметров:

    • vImagePremultipliedAlphaBlend_PlanarF(srcTopAlpha,
    • srcTopAlpha, // Yes, use this twice
    • srcBottomAlpha,
    • alpha, //On return, contains the composite alpha values
    • kvImageNoFlags );

    После вызова vPremultipliedAlphaBlend_PlanarF функция, получающиеся значения для каждого цветового канала:

    • resultAlpha = topAlpha + (1.0f - topAlpha) * bottomAlpha
    • resultColor = (topAlpha * topColor + (1.0f - topAlpha)
    • * bottomAlpha * bottomColor) / resultAlpha

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет nonpremultiplied альфа-составление композита двух изображений Planar8, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_Planar8(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ srcBottomAlpha: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_Planar8 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *srcBottomAlpha, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    srcBottomAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений нижнего исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для предрасчетных альфа-значений составного изображения. Необходимо предварительно вычислить эти значения путем вызывания функции vPremultipliedAlphaBlend_PlanarF. Посмотрите Обсуждение для подробных данных об использовании этой функции.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для источника, альфа-значений, места назначения и составных альфа-значений должны содержать ту же высоту и ширину.

    По причинам производительности эта функция не вычисляет альфа-значения для составного изображения; необходимо обеспечить их. Вы будете обычно вызывать эту функцию три раза, один раз для каждого цветового канала (красный, зеленый, синий). Поскольку каждый вызов использует то же альфа-значение, намного более эффективно для Вас предварительно вычислить альфа-значения с помощью функции vImagePremultipliedAlphaBlend_Planar8, вместо того, чтобы иметь вычисление повторился три разаvImageAlphaBlend_Planar8 функция. Вызовите функцию vPremultipliedAlphaBlend_Planar8 использование показанных параметров:

    • vImagePremultipliedAlphaBlend_Planar8(srcTopAlpha,
    • srcTopAlpha, // Yes, use this twice
    • srcBottomAlpha,
    • alpha, //On return, contains the composite alpha values
    • kvImageNoFlags );

    После вызова vPremultipliedAlphaBlend_Planar8 функция, получающиеся значения для каждого цветового канала:

    • resultAlpha = topAlpha + (1.0f - topAlpha) * bottomAlpha
    • resultColor = (topAlpha * topColor + (1.0f - topAlpha)
    • * bottomAlpha * bottomColor) / resultAlpha

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений ARGBFFFF, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_ARGBFFFF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_ARGBFFFF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений ARGB8888, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_ARGB8888(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_ARGB8888 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений PlanarF, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_PlanarF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_PlanarF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения. Даже при том, что альфа-значения уже предварительно умножаются в пиксельные значения, функция также запрашивает исходную альфа-информацию для главного изображения, чтобы сделать его вычисления. Нет никакого способа извлечь эту информацию из предварительно умноженных планарных значений, таким образом, необходимо обеспечить ее.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений Planar8, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_Planar8(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_Planar8 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения. Даже при том, что альфа-значения уже предварительно умножаются в пиксельные значения, функция также запрашивает исходную альфа-информацию для главного изображения, чтобы сделать его вычисления. Нет никакого способа извлечь эту информацию из предварительно умноженных планарных значений, таким образом, необходимо обеспечить ее.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений BGRA8888, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_BGRA8888(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_BGRA8888 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.6 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений BGRAFFFF, помещая результат в целевой буфер.

    Объявление

    Swift

    func vImagePremultipliedAlphaBlend_BGRAFFFF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedAlphaBlend_BGRAFFFF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.6 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений ARGBFFFF, использование единственного альфа-значения для целого изображения и размещения результата в целевом буфере.

    Объявление

    Swift

    func vImagePremultipliedConstAlphaBlend_ARGBFFFF(_ srcTop: UnsafePointer<vImage_Buffer>, _ constAlpha: Pixel_F, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedConstAlphaBlend_ARGBFFFF ( const vImage_Buffer *srcTop, Pixel_F constAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    constAlpha

    Альфа-значение Вы хотите примениться к изображению.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений ARGB8888, использование единственного альфа-значения для целого изображения и размещения результата в целевом буфере.

    Объявление

    Swift

    func vImagePremultipliedConstAlphaBlend_ARGB8888(_ srcTop: UnsafePointer<vImage_Buffer>, _ constAlpha: Pixel_8, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedConstAlphaBlend_ARGB8888 ( const vImage_Buffer *srcTop, Pixel_8 constAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    constAlpha

    Альфа-значение Вы хотите примениться к изображению.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух PlanarF изображения, использование единственного альфа-значения для целого изображения и размещения результата в целевом буфере.

    Объявление

    Swift

    func vImagePremultipliedConstAlphaBlend_PlanarF(_ srcTop: UnsafePointer<vImage_Buffer>, _ constAlpha: Pixel_F, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedConstAlphaBlend_PlanarF ( const vImage_Buffer *srcTop, Pixel_F constAlpha, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    constAlpha

    Альфа-значение Вы хотите примениться к изображению.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения. Даже при том, что альфа-значения уже предварительно умножаются в пиксельные значения, функция также запрашивает исходную альфа-информацию для главного изображения, чтобы сделать его вычисления. Нет никакого способа извлечь эту информацию из предварительно умноженных планарных значений, таким образом, необходимо обеспечить ее.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений Planar8, использование единственного альфа-значения для всего изображения и размещения результата в целевом буфере.

    Объявление

    Swift

    func vImagePremultipliedConstAlphaBlend_Planar8(_ srcTop: UnsafePointer<vImage_Buffer>, _ constAlpha: Pixel_8, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultipliedConstAlphaBlend_Planar8 ( const vImage_Buffer *srcTop, Pixel_8 constAlpha, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    constAlpha

    Альфа-значение Вы хотите примениться к изображению.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения. Даже при том, что альфа-значения уже предварительно умножаются в пиксельные значения, функция также запрашивает исходную альфа-информацию для главного изображения, чтобы сделать его вычисления. Нет никакого способа извлечь эту информацию из предварительно умноженных планарных значений, таким образом, необходимо обеспечить ее.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных и конечных изображений должны использовать ту же высоту и ширину.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет смешанное альфа-составление композита nonpremultiplied ARGBFFFF изображение по предварительно умноженному изображению ARGBFFFF, помещая предварительно умноженный результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_NonpremultipliedToPremultiplied_ARGBFFFF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_NonpremultipliedToPremultiplied_ARGBFFFF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных изображений должны быть, по крайней мере, столь же широкими и по крайней мере настолько же высоко как целевой буфер.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет смешанное альфа-составление композита изображения nonpremultiplied ARGB8888 по предварительно умноженному изображению ARGB8888, помещая предварительно умноженный результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_NonpremultipliedToPremultiplied_ARGB8888(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_NonpremultipliedToPremultiplied_ARGB8888 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных изображений должны быть, по крайней мере, столь же широкими и по крайней мере настолько же высоко как целевой буфер.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет смешанное альфа-составление композита изображения nonpremultiplied PlanarF по предварительно умноженному изображению PlanarF, помещая предварительно умноженный результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_NonpremultipliedToPremultiplied_PlanarF(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_NonpremultipliedToPremultiplied_PlanarF ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных изображений должны быть, по крайней мере, столь же широкими и по крайней мере настолько же высоко как целевой буфер.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Выполняет смешанное альфа-составление композита изображения nonpremultiplied Planar8 по предварительно умноженному изображению Planar8, помещая предварительно умноженный результат в целевой буфер.

    Объявление

    Swift

    func vImageAlphaBlend_NonpremultipliedToPremultiplied_Planar8(_ srcTop: UnsafePointer<vImage_Buffer>, _ srcTopAlpha: UnsafePointer<vImage_Buffer>, _ srcBottom: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageAlphaBlend_NonpremultipliedToPremultiplied_Planar8 ( const vImage_Buffer *srcTop, const vImage_Buffer *srcTopAlpha, const vImage_Buffer *srcBottom, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    srcTop

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    srcTopAlpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений главного исходного изображения.

    srcBottom

    Указатель на vImage буферизует структуру, содержащую данные для нижнего исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Буферные структуры vImage для исходных изображений должны быть, по крайней мере, столь же широкими и по крайней мере настолько же высоко как целевой буфер.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Берет изображение ARGBFFFF в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение RGBAFFFF в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_RGBAFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_RGBAFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Берет изображение ARGB8888 в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение RGBA8888 в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_RGBA8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_RGBA8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Берет изображение PlanarF в nonpremultiplied альфа-формате, вместе с информацией об альфе, и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение Planar8 в nonpremultiplied альфа-формате, вместе с информацией об альфе, и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Swift

    func vImagePremultiplyData_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImagePremultiplyData_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения. Планарное исходное изображение не содержит свою собственную информацию об альфе, таким образом, необходимо предоставить альфа-информацию.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение ARGBFFFF в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение RGBAFFFF в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_RGBAFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_RGBAFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Берет изображение ARGB8888 в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую nonpremultiplied данные для главного исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение RGBA8888 в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_RGBA8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_RGBA8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую предварительно умноженные данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Эта функция получает требуемую альфа-информацию от альфа-канала исходного изображения. Альфа-канал копируется по неизменному в конечное изображение.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Берет изображение PlanarF в предварительно умноженном альфа-формате, вместе с информацией об альфе, и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую предварительно умноженные данные для исходного изображения.]

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения. Планарное исходное изображение не содержит свою собственную информацию об альфе, таким образом, необходимо предоставить альфа-информацию.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Берет изображение Planar8 в предварительно умноженном альфа-формате, вместе с информацией об альфе, и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Swift

    func vImageUnpremultiplyData_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageUnpremultiplyData_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую предварительно умноженные данные для исходного изображения.]

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения. Планарное исходное изображение не содержит свою собственную информацию об альфе, таким образом, необходимо предоставить альфа-информацию.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.3 и позже.

  • Устанавливает цветовой канал каждого пикселя в изображении Planar8 к меньшим из двух значений — или цветовой канал или альфа-значение для того пикселя.

    Объявление

    Swift

    func vImageClipToAlpha_Planar8(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageClipToAlpha_Planar8 ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для главного исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения. Планарное исходное изображение не содержит свою собственную информацию об альфе, таким образом, необходимо предоставить альфа-информацию.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Для каждого пикселя:

    • alpha_result = sourceAlpha;
    • color_result = MIN(sourceColor, sourceAlpha);

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Устанавливает цветовой канал каждого пикселя в изображении ARGB8888 к меньшим из двух значений — или цветовой канал или альфа-значение для того пикселя.

    Объявление

    Swift

    func vImageClipToAlpha_ARGB8888(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageClipToAlpha_ARGB8888 ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Для каждого пикселя:

    • alpha_result = sourceAlpha;
    • color_result = MIN(sourceColor, sourceAlpha);

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Устанавливает цветовой канал каждого пикселя в изображении PlanarF к меньшим из двух значений — или цветовой канал или альфа-значение для того пикселя.

    Объявление

    Swift

    func vImageClipToAlpha_PlanarF(_ src: UnsafePointer<vImage_Buffer>, _ alpha: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageClipToAlpha_PlanarF ( const vImage_Buffer *src, const vImage_Buffer *alpha, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    alpha

    Указатель на vImage буферизует структуру, содержащую данные для альфа-значений исходного изображения. Планарное исходное изображение не содержит свою собственную информацию об альфе, таким образом, необходимо предоставить альфа-информацию.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Для каждого пикселя:

    • alpha_result = sourceAlpha;
    • color_result = MIN(sourceColor, sourceAlpha);

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

  • Устанавливает цветовой канал каждого пикселя в изображении ARGBFFFF к меньшим из двух значений — или цветовой канал или альфа-значение для того пикселя.

    Объявление

    Swift

    func vImageClipToAlpha_ARGBFFFF(_ src: UnsafePointer<vImage_Buffer>, _ dest: UnsafePointer<vImage_Buffer>, _ flags: vImage_Flags) -> vImage_Error

    Objective C

    vImage_Error vImageClipToAlpha_ARGBFFFF ( const vImage_Buffer *src, const vImage_Buffer *dest, vImage_Flags flags );

    Параметры

    src

    Указатель на vImage буферизует структуру, содержащую данные для исходного изображения.

    dest

    Указатель на vImage буферизует структуру данных. Вы ответственны за заполнение height, width, и rowBytes поля этой структуры, и для выделения буфера данных надлежащего размера. По возврату буфер данных, на который указывает эта структура, содержит данные конечного изображения. Когда Вам больше не нужен буфер данных, необходимо освободить память.

    flags

    Опции использовать при выполнении составления композита. Передача kvImageDoNotTile если Вы планируете выполнить свою собственную многопоточность мозаичного размещения или использования.

    Возвращаемое значение

    kvImageNoError, иначе один из кодов ошибки, описанных в vImage Ссылке Типов данных и Констант.

    Обсуждение

    Для каждого пикселя:

    • alpha_result = sourceAlpha;
    • color_result = MIN(sourceColor, sourceAlpha);

    Оператор импорта

    Objective C

    @import Accelerate;

    Swift

    import Accelerate

    Доступность

    Доступный в OS X v10.4 и позже.

Некоторые связанные форматы могут быть обработаны с помощью тех же функций (например, RGBA8888 как BRGA8888). Они макросы формализуют это использование.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений RGBA8888, помещая результат в целевой буфер.

    Объявление

    Objective C

    #define vImagePremultipliedAlphaBlend_RGBA8888( _srcTop, _srcBottom, _dest, _flags ) \ vImagePremultipliedAlphaBlend_BGRA8888( _srcTop, _srcBottom, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Выполняет предварительно умноженное альфа-составление композита двух изображений RGBAFFFF, помещая результат в целевой буфер.

    Объявление

    Objective C

    #define vImagePremultipliedAlphaBlend_RGBAFFFF( _srcTop, _srcBottom, _dest, _flags ) \ vImagePremultipliedAlphaBlend_BGRAFFFF( _srcTop, _srcBottom, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Берет изображение BGRA8888 в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Objective C

    #define vImagePremultiplyData_BGRA8888( _src, _dest, _flags ) \ vImagePremultiplyData_RGBA8888( _src, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Берет изображение BGRAFFFF в nonpremultiplied альфа-формате и преобразовывает его в изображение в предварительно умноженном альфа-формате.

    Объявление

    Objective C

    #define vImagePremultiplyData_BGRAFFFF( _src, _dest, _flags ) \ vImagePremultiplyData_RGBAFFFF( _src, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Берет изображение BGRA8888 в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Objective C

    #define vImageUnpremultiplyData_BGRA8888( _src, _dest, _flags ) \ vImageUnpremultiplyData_RGBA8888( _src, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Берет изображение BGRAFFFF в предварительно умноженном альфа-формате и преобразовывает его в изображение в nonpremultiplied альфа-формате.

    Объявление

    Objective C

    #define vImageUnpremultiplyData_BGRAFFFF( _src, _dest, _flags ) \ vImageUnpremultiplyData_RGBAFFFF( _src, _dest, _flags )

    Оператор импорта

    Objective C

    @import Accelerate;

    Доступность

    Доступный в OS X v10.7 и позже.