我在寫開源代碼C#Ghostscript wrapper。你可以試試看看(http://ghostscriptnet.codeplex.com)。大多數功能都已實現,並且可在兩個版本上運行(x86/x64)。我遇到的問題是當我初始化顯示設備直接將pdf呈現給屏幕(我成功實施了gsapi_set_display_callback回調)。C#和Ghostscript 64bit
參數,我使用的以下內容:
string[] args = new string[] {
"",
"-sDEVICE=display",
"-dTextAlphaBits=4",
"-dGraphicAlphaBits=4",
"-dDisplayHandle=1234",
"-dDisplayResolution=72",
"-dDisplayFormat=" + ((int)DISPLAY_FORMAT_COLOR.DISPLAY_COLORS_RGB |
(int)DISPLAY_FORMAT_ALPHA.DISPLAY_ALPHA_NONE |
(int)DISPLAY_FORMAT_DEPTH.DISPLAY_DEPTH_8 |
(int)DISPLAY_FORMAT_ENDIAN.DISPLAY_LITTLEENDIAN |
(int)DISPLAY_FORMAT_FIRSTROW.DISPLAY_BOTTOMFIRST).ToString() };
這個論點在32位版本運作良好,我能夠呈現PDF頁面的屏幕。初始化工作正常。
當我切換到64位版本我得到類型檢測(e_typecheck = -20)錯誤。
我知道64位版本使用-sDisplayFormat我試過,但沒有運氣。
任何人都有任何想法如何初始化設備作爲顯示在64位版本的Ghostscript庫?我不認爲我錯過了一些東西。這是一個64位版本的ghostscript庫中的錯誤?
我嘗試過Ghostscript庫的早期版本,並且在64位版本上遇到同樣的錯誤。
我使用的當前版本是9.09。在這裏你可以看看代碼:Ghostscript.NET.Viewer.GhostscriptViewer.cs