Skip to content
DemoFAQ

取消转换任务

ConvertCallback$onCancel 赋一个可调用值可中止长时间运行的任务。SDK 会周期性地轮询该回调;返回 true 会导致转换停止,相应的 Conversion::pdfTo*() 调用将返回 ErrorCode::CANCEL(值为 1)。

php
use ComPDFKit\Conversion\Conversion;
use ComPDFKit\Conversion\ConvertCallback;
use ComPDFKit\Conversion\ConvertOption;
use ComPDFKit\Conversion\ErrorCode;

$cb = new ConvertCallback();
$pagesDone = 0;

$cb->onProgress = static function (int $current, int $total) use (&$pagesDone): void {
    $pagesDone = $current;
};

$cb->onCancel = static function () use (&$pagesDone): bool {
    return $pagesDone >= 1; // 在第一页后停止
};

$option = new ConvertOption();
$code = Conversion::pdfToWord('input.pdf', '', 'output.docx', $option, $cb);

echo ErrorCode::describe($code) . PHP_EOL; // "Cancel"