軟件官網
https://wiki.scribus.net/canvas/Scribus
https://github.com/scribusproject/scribus
https://sourceforge.net/projects/scribus/files/scribus/ 穩定版
https://sourceforge.net/projects/scribus/files/scribus-devel/ develop版 【推薦】
https://sourceforge.net/projects/scribus/files/scribus-svn/ 搶鮮版
https://sourceforge.net/projects/scribus/files/scribus-libs/ 依賴庫
注意: scribus v1.4.x基於Qt4;v1.5.x基於Qt5
軟件簡介
Scribus官方版是一款專業的桌面排版軟件 ( Open Source Desktop Publishing) ,它可用於電子雜誌製作,類似Adobe Pagemaker。Scribus功能強勁,支持大多數主要的圖像格式,可以輕鬆製作個人文件、郵件列表、電子雜誌等。作爲一個排版軟件,Scribus具有一定的矢量圖形繪製(雙擊輪廓圖形即可編輯)和整合功能。軟件開源,跨平臺,C++/Qt編寫,支持Linux/Unix,MacOS X,OS/2和Windows操作系統。
功能特點
1、scribus官方版支持大多數主要的圖像格式;
2、專業的字型/圖像設置功能包括CMYK顏色和ICC色彩管理;
3、以C++寫編的,使用Python爲內置腳本;
4、有超過24種語言的國際化支援;
5、體積小巧,可放在U盤隨身攜帶;
6、輕鬆製作個人文件、郵件列表、電子雜誌等。
7、風格工具、對齊工具、頁面劃分工具都是分離的——都位於菜單裏。
8、擁有路徑工具,可以和Inkscape、sK1、GIMP很好的協同工作。
軟件支持的文件類型
Scribus完整支持SVG 1.0規範,能夠利用sK1衍生項目UniConvertor把其他格式改爲SVG從而支持導入、導出(內部處理不使用svg,所以svg是導入導出的)。
導入
導入odt、純文本。
支持svg、pdf導入,還有ai等格式(使用UniConverter)
輸出
除了自身的存儲類型爲sla,還完整的導出支持EPS(Ghostscript),PDF,SVG(完整1.0規範),以及導出圖片(這裏也有EPS但是和前文提及不同)。
源碼編譯
1、源碼下載,v1.5.5
https://sourceforge.net/projects/scribus/files/scribus-devel/
scribus-1.5.5.7z
scribus-1.5.x-libs-msvc2015-20200111.7z
scribus-common-libs-20200111.7z
解壓縮這3個壓縮包,這3個文件夾的路徑是並行關係:
2、編譯
(1)scribus-1.5.5.7裏面有編譯說明文檔BUILDING_win32_msvc.txt,參照它來編譯就ok。
(2)VS2017打開文件,scribus-1.5.x-libs-msvc2015\scribus-libs-msvc2015.sln,直接編譯即可。因爲scribus-lib-paths.props已經把依賴環境配置好了,暖心啊!
VS IDE主菜單-生成-批生成-全選-編譯,編譯過程會報錯:
------ 已啓動生成: 項目: harfbuzz, 配置: Release x64 ------
LINK : fatal error LNK1181: 無法打開輸入文件“icudt.lib”
已完成生成項目“harfbuzz.vcxproj”的操作 - 失敗。
------ 已啓動生成: 項目: harfbuzz, 配置: Release Win32 ------
LINK : fatal error LNK1181: 無法打開輸入文件“icudt.lib”
已完成生成項目“harfbuzz.vcxproj”的操作 - 失敗。
------ 已啓動生成: 項目: harfbuzz, 配置: Debug x64 ------
LINK : fatal error LNK1104: 無法打開文件“icudt.lib”
已完成生成項目“harfbuzz.vcxproj”的操作 - 失敗。
------ 已啓動生成: 項目: harfbuzz, 配置: Debug Win32 ------
LINK : fatal error LNK1104: 無法打開文件“icudt.lib”
已完成生成項目“harfbuzz.vcxproj”的操作 - 失敗。
========== 生成: 成功 0 個,失敗 4 個,最新 100 個,跳過 0 個 ==========
是因爲找不到icudt.lib的路徑,把lib所在文件夾的名稱Win32-v140改爲Win32-v141即可。64位同樣的。
scribus-1.5.x-libs-msvc2015\icu-65.1\lib\Win32-v141
scribus-1.5.x-libs-msvc2015\icu-65.1\lib\x64-v141
(3)文件編輯器打開,scribus-1.5.5\win32\msvc2015\Scribus-build-props.props,修改相關的Qt環境爲自己本機的:
<PropertyGroup Label="UserMacros">
<SCRIBUS_LIB_ROOT>F:\tmp-source\qt-hmi\scribus\scribus-1.5.x-libs-msvc2015</SCRIBUS_LIB_ROOT>
</PropertyGroup>
<Import Project="$(SCRIBUS_LIB_ROOT)\scribus-lib-paths.props" />
<!-- Import Qt5 -->
<PropertyGroup Label="UserMacros">
<!-- Qt5 -->
<QT5_DIR Condition="'$(Platform)' == 'Win32' and '$(PlatformToolset)' == 'v141'" >F:\Qt\Qt5.12.7\5.12.7\msvc2017</QT5_DIR>
<QT5_DIR Condition="'$(Platform)' == 'x64' and '$(PlatformToolset)' == 'v141'" >F:\Qt\Qt5.12.7\5.12.7\msvc2017_64</QT5_DIR>
然後VS2017打開文件,scribus-1.5.x-libs-msvc2015\Scribus.sln,直接編譯即可。
VS IDE主菜單-生成-批生成-全選-編譯,編譯過程會報錯:
錯誤1:
解決辦法:
EditPlus編輯器分別打開about.cpp和fontlistmodel.cpp,把編碼修改爲UTF-8 + BOM。
錯誤2:
使用vs2017編譯插件,scribus-1.5.5\scribus\plugins\import\pdf\,會報一堆錯誤,先不管它,把相關代碼註釋掉即可。畢竟這個是pdf插件,我用不到它。
3、結果文件
最終編譯出來的exe結果文件在scribus\Scribus-builds\,用戶需要手動把dll拷貝過來。尤其要記得把python文件夾裏的相關內容拷貝過來。以x64位爲例,拷貝scribus-common-libs\python-2.7.15-amd64到scribus\Scribus-builds\,文件夾重命名爲python。