com.aliyun.svideosdk.editor

## Interface AliyunPasterRender

-     public interface AliyunPasterRender

  贴图底层渲染接口，添加贴图到底层渲染

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `addCaption(AliyunCaption aCaption)` Add Caption
    `int` | `addCaptionPaster(Bitmap bmp, EffectCaption caption)` Deprecated.
    `int` | `addCaptionPaster(BitmapGenerator generator, EffectCaption caption)` Deprecated.
    `int` | `addEffectPaster(EffectPaster paster)` 添加普通贴图
    `int` | `addSubtitle(Bitmap bmp, EffectText subtitle)` Deprecated.
    `int` | `addSubtitle(BitmapGenerator generator, EffectText subtitle)` Deprecated.
    `int` | `applyPaintCanvas(EffectPaint effectPaint)` 添加涂鸦
    `java.util.List<AliyunCaption>` | `findCaptions(long timeInUs)` Find Caption List at startTime in microseconds
    `Size` | `getDisplaySize()` Get the rect of display size
    `int` | `hidePaster(EffectPaster paster)` 隐藏贴图
    `void` | `removeCanvas()` 删除涂鸦
    `int` | `removeCaption(AliyunCaption caption)` remove Caption
    `int` | `removePaster(EffectPaster paster)` 移除贴图，调用后底层不再渲染
    `void` | `setDisplaySize(int width, int height)` 设置贴图展示区域的大小，该设置影响贴图在视频中的位置和大小， 贴图在视频中的大小为贴图的展示大小与展示区域大小的比例换算到视频区域中，位置的计算同理
    `int` | `setEffectWaterMark(EffectImage image)` 添加水印
    `void` | `setOnPasterResumeAndSave(OnPasterResumeAndSave listener)` 设置贴图恢复和保存的回调，因为页面被系统回收后，渲染层资源已经释放， 之前添加的贴图资源也已经不存在，需要在恰当的时机保存当前已经使用的贴图资源， 贴图保存时会回调`OnPasterResumeAndSave`的onPasterSave方法 该回调的参数是贴图列表，因为sdk需要实现保存的贴图与屏幕无关， 所以使用了`PasterTrack`类来保存贴图到文件
    `int` | `showCaptionPaster(Bitmap bmp, EffectCaption caption)` Deprecated. 请使用 `showCaptionPaster(Bitmap, EffectCaption)`
    `int` | `showCaptionPaster(BitmapGenerator bitmapGenerator, EffectCaption caption)` 显示字幕贴图
    `int` | `showPaster(EffectPaster paster)` 显示贴图，基本效果如同调用了removePaster()和addEffectPaster()
    `int` | `showTextPaster(Bitmap bmp, EffectText text)` 显示文字贴图
    `int` | `showTextPaster(BitmapGenerator generator, EffectText text)` 显示文字贴图
    `int` | `updateCaption(AliyunCaption caption)` Update Caption

- - ### Method Detail

    - #### setDisplaySize

          void setDisplaySize(int width,
                              int height)

      设置贴图展示区域的大小，该设置影响贴图在视频中的位置和大小， 贴图在视频中的大小为贴图的展示大小与展示区域大小的比例换算到视频区域中，位置的计算同理
      Parameters:
        `width` -
        `height` -

    - #### getDisplaySize

          Size getDisplaySize()

      Get the rect of display size

    - #### setOnPasterResumeAndSave

          void setOnPasterResumeAndSave(OnPasterResumeAndSave listener)

      设置贴图恢复和保存的回调，因为页面被系统回收后，渲染层资源已经释放， 之前添加的贴图资源也已经不存在，需要在恰当的时机保存当前已经使用的贴图资源， 贴图保存时会回调`OnPasterResumeAndSave`的onPasterSave方法 该回调的参数是贴图列表，因为sdk需要实现保存的贴图与屏幕无关， 所以使用了`PasterTrack`类来保存贴图到文件
      Parameters:
        `listener` -

    - #### addSubtitle

          @Deprecated
          int addSubtitle(Bitmap bmp,
                                      EffectText subtitle)

      Deprecated.
      添加文字贴图，文字贴图为文字图片及对贴图的描述
      Parameters:
        `bmp` - 文字贴图的文字图片
        `subtitle` - 贴图描述类
      Returns:
        `AliyunErrorCode.ERROR_DUPLICATE_ADD_EFFECT` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.ALIVC_FRAMEWORK_RENDER_ERROR_SCENE_INVALID`

    - #### addSubtitle

          @Deprecated
          int addSubtitle(BitmapGenerator generator,
                                      EffectText subtitle)

      Deprecated.
      添加文字贴图
      Parameters:
        `generator` - 文字图片生成器
        `subtitle` - 贴图对象
      Returns:
        `AliyunErrorCode.ERROR_DUPLICATE_ADD_EFFECT` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.ALIVC_FRAMEWORK_RENDER_ERROR_SCENE_INVALID`

    - #### addEffectPaster

          int addEffectPaster(EffectPaster paster)

      添加普通贴图
      Parameters:
        `paster` - 贴图描述类
      Returns:
        `AliyunErrorCode.ERROR_DUPLICATE_ADD_EFFECT` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.SVIDEO_EDITOR_FILE_NOT_EXIST` `AliyunEditorErrorCode.SVIDEO_EDITOR_PARSE_RESOURCE_FAILED` `AliyunEditorErrorCode.ALIVC_FRAMEWORK_RENDER_ERROR_SCENE_INVALID`

    - #### setEffectWaterMark

          int setEffectWaterMark(EffectImage image)

      添加水印
      Parameters:
        `image` - 水印描述类
      Returns:
        `AliyunErrorCode.ERROR_EFFECT_USE_FAILED` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.SVIDEO_EDITOR_FILE_NOT_EXIST` `AliyunEditorErrorCode.SVIDEO_EDITOR_VIEW_TYPE_NOT_SUPPORTED`

    - #### addCaptionPaster

          @Deprecated
          int addCaptionPaster(Bitmap bmp,
                                           EffectCaption caption)

      Deprecated.
      添加字幕贴图，字幕贴图为普通贴图加文字
      Parameters:
        `bmp` - 字幕贴图的文字图片
        `caption` - 贴图描述类
      Returns:
        `AliyunErrorCode.ERROR_DUPLICATE_ADD_EFFECT` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.SVIDEO_EDITOR_FILE_NOT_EXIST` `AliyunEditorErrorCode.SVIDEO_EDITOR_VIEW_TYPE_NOT_SUPPORTED` `AliyunEditorErrorCode.SVIDEO_EDITOR_PARSE_RESOURCE_FAILED` `AliyunEditorErrorCode.ALIVC_FRAMEWORK_RENDER_ERROR_SCENE_INVALID`

    - #### addCaptionPaster

          @Deprecated
          int addCaptionPaster(BitmapGenerator generator,
                                           EffectCaption caption)

      Deprecated.
      添加字幕贴图，字幕贴图为普通贴图加文字
      Parameters:
        `generator` - 字幕贴图的文字图片生成器
        `caption` - 贴图描述类
      Returns:
        `AliyunErrorCode.ERROR_DUPLICATE_ADD_EFFECT` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.SVIDEO_EDITOR_FILE_NOT_EXIST` `AliyunEditorErrorCode.SVIDEO_EDITOR_VIEW_TYPE_NOT_SUPPORTED` `AliyunEditorErrorCode.SVIDEO_EDITOR_PARSE_RESOURCE_FAILED` `AliyunEditorErrorCode.ALIVC_FRAMEWORK_RENDER_ERROR_SCENE_INVALID`

    - #### removePaster

          int removePaster(EffectPaster paster)

      移除贴图，调用后底层不再渲染
      Parameters:
        `paster` - 贴图描述类

    - #### hidePaster

          int hidePaster(EffectPaster paster)

      隐藏贴图
      Parameters:
        `paster` - 贴图描述类

    - #### showPaster

          int showPaster(EffectPaster paster)

      显示贴图，基本效果如同调用了removePaster()和addEffectPaster()
      Parameters:
        `paster` - 贴图描述类

    - #### showTextPaster

          int showTextPaster(Bitmap bmp,
                             EffectText text)

      显示文字贴图
      Parameters:
        `bmp` - 文字图片
        `text` - 文字贴图描述

    - #### showTextPaster

          int showTextPaster(BitmapGenerator generator,
                             EffectText text)

      显示文字贴图
      Parameters:
        `generator` -
        `text` -

    - #### showCaptionPaster

          int showCaptionPaster(Bitmap bmp,
                                EffectCaption caption)

      Deprecated. 请使用 `showCaptionPaster(Bitmap, EffectCaption)`
      显示字幕贴图
      Parameters:
        `bmp` - 文字图片
        `caption` - 贴图描述

    - #### showCaptionPaster

          int showCaptionPaster(BitmapGenerator bitmapGenerator,
                                EffectCaption caption)

      显示字幕贴图
      Parameters:
        `bitmapGenerator` - 文字图片生成器
        `caption` - 贴图描述

    - #### removeCanvas

          void removeCanvas()

      删除涂鸦

    - #### applyPaintCanvas

          int applyPaintCanvas(EffectPaint effectPaint)

      添加涂鸦
      Parameters:
        `effectPaint` -
      Returns:
        `AliyunErrorCode.ERROR_EFFECT_USE_FAILED` `AliyunErrorCode.ERROR_PARAM_IMAGE_FILE_PATH_INVALID` `AliyunEditorErrorCode.SVIDEO_EDITOR_NATIVE_NOT_INITED` `AliyunEditorErrorCode.SVIDEO_EDITOR_INVALID_STATE` `AliyunEditorErrorCode.SVIDEO_EDITOR_FILE_NOT_EXIST` `AliyunEditorErrorCode.SVIDEO_EDITOR_VIEW_TYPE_NOT_SUPPORTED`

    - #### addCaption

          int addCaption(AliyunCaption aCaption)

      Add Caption
      Parameters:
        `aCaption` - Caption Instance
      Returns:
        retCode( 0 : success , <0 : fail)

    - #### removeCaption

          int removeCaption(AliyunCaption caption)

      remove Caption
      Parameters:
        `aCaption` - Caption Instance
      Returns:
        retCode( 0 : success , <0 : fail)

    - #### updateCaption

          int updateCaption(AliyunCaption caption)

      Update Caption
      Parameters:
        `aCaption` - Caption Instance
      Returns:
        retCode( 0 : success , <0 : fail)

    - #### findCaptions

          java.util.List<AliyunCaption> findCaptions(long timeInUs)

      Find Caption List at startTime in microseconds
      Parameters:
        `timeInUs` - the caption show time in microseconds
      Returns:
        Caption List