a23ff739创建于 2024年11月18日历史提交

OH_Print

Overview

Provides the C APIs definition of the print module.

System capability: SystemCapability.Print.PrintFramework

Since: 12

Summary

Files

Name Description
ohprint.h Declares APIs for discovering and connecting to printers, printing files, and querying the list of added printers and printer information.

Structs

Name Description
struct Print_Margin Defines the page margin.
struct Print_PageSize Defines the page size.
struct Print_Range Defines the page range.
struct Print_PrintAttributes Defines the print attributes.
struct Print_PrintDocCallback Defines the print job callback.

Types

Name Description
typedef void(* Print_WriteResultCallback) (const char *jobId, uint32_t code) Defines a callback used to return the file write-back result.
typedef void(* Print_OnStartLayoutWrite) (const char *jobId, uint32_t fd, const Print_PrintAttributes *oldAttrs, const Print_PrintAttributes *newAttrs, Print_WriteResultCallback writeCallback) Defines a callback to be invoked when the file write-back starts.
typedef void(* Print_OnJobStateChanged) (const char *jobId, uint32_t state) Defines a callback used to return the print job state.

Enums

Name Description
Print_ErrorCode {
PRINT_ERROR_NONE = 0, PRINT_ERROR_NO_PERMISSION = 201, PRINT_ERROR_INVALID_PARAMETER = 401, PRINT_ERROR_GENERIC_FAILURE = 24300001,
PRINT_ERROR_RPC_FAILURE = 24300002, PRINT_ERROR_SERVER_FAILURE = 24300003, PRINT_ERROR_INVALID_EXTENSION = 24300004, PRINT_ERROR_INVALID_PRINTER = 24300005,
PRINT_ERROR_INVALID_PRINT_JOB = 24300006, PRINT_ERROR_FILE_IO = 24300007, PRINT_ERROR_UNKNOWN = 24300255
}
Enumerates the error codes.
Print_JobDocAdapterState {
PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY = 0, PRINT_DOC_ADAPTER_PRINT_TASK_SUCCEED = 1, PRINT_DOC_ADAPTER_PRINT_TASK_FAIL = 2, PRINT_DOC_ADAPTER_PRINT_TASK_CANCEL = 3,
PRINT_DOC_ADAPTER_PRINT_TASK_BLOCK = 4, PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY_FOR_CANCELED = 5, PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY_FOR_STARTED = 6
}
Enumerates the print job states.

Functions

Name Description
Print_ErrorCodeOH_Print_StartPrintByNative (const char *printJobName, Print_PrintDocCallback printDocCallback, void *context) Calls the API for opening the print preview page.

Type Description

typedef void(* Print_OnJobStateChanged) (const char *jobId, uint32_t state)

Description Defines a callback used to return the print job state.

Since: 13

Parameters

Name Description
jobId Print job ID.
state Current job state.
typedef void(* Print_OnStartLayoutWrite) (const char *jobId, uint32_t fd, const Print_PrintAttributes *oldAttrs, const Print_PrintAttributes *newAttrs, Print_WriteResultCallback writeCallback)

Description Defines a callback to be invoked when the file write-back starts.

Since: 13

Parameters

Name Description
jobId Print job ID.
fd File handle for write-back.
oldAttrs Print parameter before change.
newAttrs Print parameter after change.
writeCallback Callback to be invoked when the file write-back finishes.
typedef void(* Print_WriteResultCallback) (const char *jobId, uint32_t code)

Description Defines a callback used to return the file write-back result.

Since: 13

Parameters

Name Description
jobId Print job ID.
code File writeback result.

Enum Description

enum Print_ErrorCode

Description Enumerates the error codes.

Since: 12

Value Description
PRINT_ERROR_NONE Success.
PRINT_ERROR_NO_PERMISSION Permission denied.
PRINT_ERROR_INVALID_PARAMETER Invalid parameter.
PRINT_ERROR_GENERIC_FAILURE Internal error.
PRINT_ERROR_RPC_FAILURE RPC transmission failed.
PRINT_ERROR_SERVER_FAILURE Print service failed.
PRINT_ERROR_INVALID_EXTENSION Invalid print extension.
PRINT_ERROR_INVALID_PRINTER Invalid printer.
PRINT_ERROR_INVALID_PRINT_JOB Invalid print job.
PRINT_ERROR_FILE_IO File I/O error.
PRINT_ERROR_UNKNOWN Unknown error.
enum Print_JobDocAdapterState

Description Enumerates the print job states.

Since: 13

Value Description
PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY Print preview page destroyed.
PRINT_DOC_ADAPTER_PRINT_TASK_SUCCEED Print job succeeded.
PRINT_DOC_ADAPTER_PRINT_TASK_FAIL Print job failed.
PRINT_DOC_ADAPTER_PRINT_TASK_CANCEL Print job canceled.
PRINT_DOC_ADAPTER_PRINT_TASK_BLOCK Print job blocked.
PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY_FOR_CANCELED Print preview page destroyed by clicking the cancel button.
PRINT_DOC_ADAPTER_PREVIEW_ABILITY_DESTROY_FOR_STARTED Print preview page destroyed by clicking the print button.

Function Description

OH_Print_StartPrintByNative()

Print_ErrorCode OH_Print_StartPrintByNative (const char * printJobName, Print_PrintDocCallback printDocCallback, void * context )

Description Calls the API for opening the print preview page.

System capability: SystemCapability.Print.PrintFramework

Since: 13

Parameters

Name Description
printJobName Print job name.
printDocCallback Print job callback struct.
context Context of the ability that calls the API.

Required Permissions

ohos.permission.PRINT

Returns

Print_ErrorCode#PRINT_ERROR_NONE: The operation is successful.

PRINT_ERROR_NO_PERMISSION: The ohos.permission.PRINT permission must be declared.

PRINT_ERROR_RPC_FAILURE: Failed to connect to the print service.