ghostscript 9.53.3 по какой-то причине автоматически поворачивает изображения

#java #image #png #ghostscript #eps

#java #изображение #png #ghostscript #eps

Вопрос:

Я использую ghostsript версию 9.53.3, у меня есть eps изображение. но когда я пытаюсь преобразовать его в png , он поворачивает его по какой-то причине, которую я не понимаю. вот моя команда, которую я выполняю на java, выполняя process и отправляя аргументы командной строки:

 ["C:Program Filesgsgs9.53.3bingswin64.exe", -dNOPAUSE, -dEPSFitPage, -g88x88, -r300, -sDEVICE=png16m, -dGraphicsAlphaBits=4, -dBATCH, -sOutputFile=C:ProgramDataInBetweenTempInBetweenClientIBTempeps_12257004264254001602758322946eac07d9c-2366-49f1-bd2e-0181c1bef7ea.png, "D:TrunkcheckoutIBClientServerbin..Projectsmyview_2356_VerpackungenPNGImagespiktogramme/eps/2260_Erf_360.eps"]
  

Мой код:

 List<String> shellCommand = new ArrayList<String>();

  if (isWindowOS) {
    shellCommand.add("""   getGSPath()   """);
    shellCommand.add("-dNOPAUSE");
    shellCommand.add("-dEPSFitPage");
    width = Unit.getPixelsFromPoints(width, dpi);
    height = Unit.getPixelsFromPoints(height, dpi);
    shellCommand.add("-g"   width   "x"   height);
    shellCommand.add("-r"   dpi);
    shellCommand.add("-sDEVICE="   device);
    if (GSUtilsInterface.DEVICE_PNG.equals(device)) {
      shellCommand.add("-dGraphicsAlphaBits=4");
    }
    shellCommand.add("-dBATCH");
    shellCommand.add("-sOutputFile="  outputFile.toString());
    shellCommand.add("""   imagePath   """);
  } else {
    shellCommand.add("pstopdf");
    shellCommand.add(imagePath);
    shellCommand.add("-o");
    shellCommand.add(outputFile.toString());
  }
  log.debug("shellCommand:"   shellCommand);

  InputStream in = null;
  try {
    Process p;
    // Process p1 = null;
    log.eventLow("Executing: "   shellCommand.toString());

    if (isWindowOS) {
      p = new ProcessBuilder(shellCommand).start();
  

Ответ №1:

Попробуйте добавить -dAutoRotatePages=/None

Комментарии:

1. привет @jay Rohr я добавил вышеуказанный параметр, но все равно не повезло. изображение все еще вращается

2. Я попробовал вашу точную командную строку в окне Linux, и png НЕ вращался. На данный момент я бы посоветовал вам просмотреть файл eps. Правильно ли отображается gs (gsview)?