В руководстве Ghostscript прямо указано, что вы можете повысить производительность, используя параметры, показанные на диаграмме. Однако, как бы я ни добавлял параметры в Ghostscript, во время его выполнения, похоже, не происходит никаких изменений. Моя платформа – это плата разработки Zynq под управлением Linux. Код следующий:
Код: Выделить всё
#include "lib/iapi.h"
#include "lib/ierrors.h"
#include
#include
#include "time.h"
void *minst = NULL;
int main(int argc, char *argv[])
{
int code, code1;
int gsargc;
clock_t begintime,endtime;
begintime=clock(); //计时开始
const char* gsargv[] = {
"",
"-dNumRenderingThreads=4",
"-dBufferSpace=50000000",
"-dMaxBitmap=500000000",
"-dBandBufferSpace=10000000",
"-dMaxPatternBitmap=1000000",
"-sDEVICE=tiffsep1",
"-dQUIET",
"-r600",
"-g2558x6600",
"-o",
"./output%d.tif",
"-c",
" setpagedevice",
"-f", "./text_graph_image_cmyk_rgb.pdf"
};
gsargc = sizeof(gsargv) / sizeof(gsargv[0]); // 数组元素的数量
code = gsapi_new_instance(&minst, NULL);
if (code < 0)
return 1;
code = gsapi_set_arg_encoding(minst, GS_ARG_ENCODING_UTF8);
if (code == 0)
code = gsapi_init_with_args(minst, gsargc, (char**)gsargv);
code1 = gsapi_exit(minst);
if ((code == 0) || (code == gs_error_Quit))
code = code1;
gsapi_delete_instance(minst);
// if ((code == 0) || (code == gs_error_Quit))
// return 0;
endtime=clock();
qDebug("\n gs Running Time: %6.f s\n", float(endtime-begintime)/CLOCKS_PER_SEC);
return 1;
}
Подробнее здесь: https://stackoverflow.com/questions/783 ... hostscript