Menu

#133 Ошибки распознавания форматов .PCX/.PSD в плагине FarImageView

Fixed
nobody
None
High
Defect
2019-08-14
2019-08-12
VictorVG
No

Ошибки распознавания форматов .PCX/.PSD в плагине FarImageView

Плагин FarImageView до версии v3.46.6.4362 включительно не распознаёт форматы PCX и PSD, но с остальными форматами проблем не возникло, библиотека FreeImage v2.5.2 из состава демо-программы со страницы проекта FreeImage на sf.net Graphics-Suite v2.5.3.1 (2002 г., Markus Loib) читает файлы .PCX/.PSD без проблем. Оригинальная версия плагина использующая FreeImage v3.17.0 так как и v3.46.6.4362 SVN r176 cлинкованая с FreeImage v3.18.0 не распознают данные форматы выводя сообщения об ошибках:

при попытке открыть для просмотра (F3) файл в формате .PCX плагин выводит сообщение "Ошибка открытия файла <имя_файла>.PCX Format [PCX]: Parsing error", а если попытаться открыть по F3 файл в формате .PSD текст сообщения изменяется на " Ошибка открытия файла <имя_файла>.psd Format [PSD]: Error in Image Resource".

При этом библиотека FreeImage форматы .PCX/.PSD поддерживает.

12 Attachments

Discussion

  • Anonymous

    Anonymous - 2019-08-12

    1) есть ли .pcx/.psd файлы которые плагин открывает?
    2) есть ли более свежие (не 2002 года) примеры успешного окрытия таких файлов через библиотеку freeimage.

     
  • VictorVG

    VictorVG - 2019-08-12

    1) Лично мне такие файлы не встретились;
    2) Да, прошу - Kujawiak Viewer (kuView) v1.6 (Project Info: http://sourceforge.net/projects/kujawiak ) использует FreeImage v3.13.11

     

    Last edit: VictorVG 2019-08-12
  • VictorVG

    VictorVG - 2019-08-12

    Да, случайно картинки упустил. Версии программы и библиотеки в Абоуте видны, на верхней картинке видно как GIMP 2.10.12 не смог без ошибок прочитать sspline.psd, а у FreeImage проблем не возникло .

     
  • VictorVG

    VictorVG - 2019-08-14

    Пока прикрутил немного чёрной магии :) - скрипт SV_Review.lua вызывающий Review по маске (PCRE - что проще?):

    -- Open current graphics or video file at active panel in to Review.
    --
    -- v1.0, Initial version
    -- VictorVG, 14.08.2019 01:07:44 +0300
    -- v1.1, Refactoring
    -- VictorVG, 14.08.2019 06:41:47 +0300
    
    local RVId="0364224C-A21A-42ED-95FD-34189BA4B204"
    local MaskG,MaskV="/.+\\.(pcx|psd)/i","/.+\\.(3gp|avi|flv|m2t|mkv|mov|mp4|mp4v|mp4a|mpg|mpeg|mts|ts|wbem|wmv)/i"
    
    Macro{
      id="12FA2EAA-E5B0-4F4B-8C02-E8B008490D47";
      area="Shell Viewer";
      key="F3 Enter NumEnter MsM1Click";
      description="Review: Open graphics files";
      priority=60;
      condition=function() return (Plugin.Exist(RVId) and mf.fmatch(APanel.Current,MaskG)==1) end;
      action=function()
      Far.DisableHistory(-1) Plugin.Command(RVId,APanel.Current);
    end;
    }
    
    Macro{
      id="3A7772FB-E33D-4239-A67F-4B4800787C16";
      area="Shell";
      key="F3 CtrlPgDn";
      description="Review: Open video files";
      priority=60;
      condition=function() return (Plugin.Exist(RVId) and mf.fmatch(APanel.Current,MaskV)==1) end;
      action=function()
      Far.DisableHistory(-1) Plugin.Command(RVId,APanel.Current);
    end;
    }
    

    пригодится, а если что - убрать не долго.:)

     

    Last edit: VictorVG 2019-08-14
  • Vladimir Surguchev

    • status: New --> Fixed
     
  • Vladimir Surguchev

    io.read(..., size, cont, ...) возвращал не count а байты.
    оба формата (может не только) не работали из-за этого.

     
  • VictorVG

    VictorVG - 2019-08-14

    Спасибо! Работает.

     

Anonymous
Anonymous

Add attachments
Cancel