搜尋此網誌

2011年6月29日 星期三

GIMP-2.7.3 for windows(開發中的測試版本)

這是使用 ftp://gimptest.flamingtext.com/pub/nightly-tarballs/
6月25日的檔案編譯而成的,還不是官方最後釋出的版本
此一版本跟之前2.7.2最大的不同在於單一視窗模式似乎已經可以正常運作了


GIMP-2.7.7z.001GIMP-2.7.7z.002 這是我自己製作的可攜式版本
內容包含GAP、G'MIC、MathMap、...等等部落格內有介紹過的一些Plug-ins跟Scripts
所以檔案較大,因此分成兩個檔案,兩檔都必須下載,下載之後,放在同一目錄下,用 7-zip 對 001 解壓縮即可(解壓縮參考 Gimp 2.6.11可攜式版本)
(因為 2.7 的版本已經內建 Python 環境,因此安不安裝就沒有那麼重要
反到是不用安裝的可攜式版本會比較方便些,所以這次製作的是可攜式版本
不過沒在其他電腦上測過,希望下載的人,能不能用都說一聲)

如何啟動?
開啟檔案總管,找到你所解壓縮的位置,如下圖執行其中的 GimpLauncher.exe


在2.7中,『檔案』->『儲存』只能存gimp專有格式xcf
如要儲存其他格式, 需用『檔案』->『匯出...』
如下圖,直接打上要存的副檔名,如gif


儲存gif時的選項,記住 As animation 要打勾,儲存的gif才會動


另外,用『 Video 』 -> 『 Split Video into Frames 』->『 Extract Videorange 』
有時候會發現影片的fps不對,像 Gimp:為動畫加效果(套用濾鏡到所有影像圖層) 中的
那個 Sintel Open Movie,2000 fps,這可能會產生些問題


這時先取消對話框
編輯 settings 資料夾底下的 extract_video_framerate.txt 文字檔(如果沒有此檔就新建一個)
(2010/08/21:2.7.0測試了幾個以前出錯的檔案(rmvb除外),都得到正確的fps,因此就沒有加這個動作)
寫下該影片正確的fps,如
24.00
這是那個Sintel - Third Open Movie by Blender Foundation  影片正確的fps,之後存檔離開
重新開啟『 Extract Videorange 』對話框選擇影片
如下圖可以看到顯示的是你剛寫下的fps
你可以按『Video Range』展開右側,以視覺方式來定義你想要擷取的範圍


*** 再次強調 ***
『 Video 』->『 Split Video into Frames 』->『Extract Videorange 』
不支援中文檔名,所以如果你存放檔案的資料夾、檔案名稱是中文,先將它改成英文

這是 GimpLauncher 的原始檔案,有興趣的可以參考看看

#include "windows.h"
#include "stdio.h"
#include "stdlib.h"

int        main(int argc, char *argv[])
{
    char    currDir[MAX_PATH], *s;
    char    szEnv[MAX_PATH];

    if( !GetModuleFileName(NULL, currDir, MAX_PATH) ) {
        fprintf(stderr, "Couldn't retrieve current directory!\n");
        return 1;
    }

    s = strrchr(currDir, '\\');
    if( s ) *s = 0;

    SetCurrentDirectory(currDir);

    sprintf(szEnv, "%s\\settings", currDir);
    if( SetEnvironmentVariable("GIMP2_DIRECTORY", szEnv) == 0 ) {
        fprintf(stderr, "Unable to set GIMP2_DIRECTORY environment variable\n");
        return 1;
    }
    sprintf(szEnv, "%s\\bin", currDir);
    if( SetEnvironmentVariable("PATH", szEnv) == 0 ) {
        fprintf(stderr, "Unable to set PATH environment variable\n");
        return 1;
    }
    sprintf(szEnv, "%s\\lib\\gimp\\2.0\\python", currDir);
    if( SetEnvironmentVariable("PYTHONPATH", szEnv) == 0 ) {
        fprintf(stderr, "Unable to set PYTHONPATH environment variable\n");
        return 1;
    }

    char    fullExeName[MAX_PATH];
    sprintf(fullExeName, "%s\\bin\\gimp-2.7.exe", currDir);
    if( argc > 1 )
        sprintf(fullExeName, "%s %s", fullExeName, argv[1]);
 
    STARTUPINFO            si;
    PROCESS_INFORMATION pi;

    ZeroMemory(&si, sizeof(si));
    ZeroMemory(π, sizeof(pi));
    si.cb = sizeof(si);
    printf("\nLaunching gimp-2.7... ");

    if( !CreateProcess(NULL, fullExeName, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, currDir, &si, π) ) {
        fprintf(stderr, "\nUnable to launch codeblocks.exe\n");
        system("pause");
        return 1;
    }

    return 0;
}

************* 2011/08/21 *******************
做了一些更新
gimp-gap 改用 2.7.0
刪了script-fu 的 layer effect(原『 Script-Fu 』 -> 『 Layer Effects 』)
改用 python 的版本(『 圖層 』 -> 『 Layer Effects 』)
原 2.7 的 plug-in map-object.exe
在『濾鏡』->『 Filter all Layers ...』裡使用會有些問題
因此改用2.6.11的版本