Чтобы использовать имитацию надпечатки, вам нужно использовать преобразование, а не устанавливать флаг для заданного вывода.
Это преобразование будет затем проходить по дереву узлов, которое вы ему даете, обновляя и рендеринг в результатв DOM, который был изменен так, чтобы он имитировал оверпринт.
Для этой цели Мако предлагает стандартное преобразование.Этот код устанавливает его:
// Setup the overprint simulation transform
IOverprintSimulationTransformPtr transform = IOverprintSimulationTransform::create(jawsMako);
transform->setSimulateBlackDeviceGrayTextOverprint(false);
transform->setResolution(300);
И вы можете применить это преобразование к странице, используя:
IPagePtr page = document->getPage(0);
transform->transformPage(page);
Если вы хотите применить имитацию надпечатки к странице для рендеринга, но неЕсли вы не хотите, чтобы это влияло на DOM исходной страницы, вы можете сначала клонировать страницу, используя:
IPage::clone()
, а затем примените преобразование к клонированной странице.После рендеринга клонированной страницы ее можно удалить.