2013-10-15 122 views
1

我是新的android deverloper。我的項目是使用mupdf爲android簽署pdf文件。我使用源代碼mupdf forrod(源代碼在這裏https://github.com/muennich/mupdf/tree/master/android)你可以下來它嘗試運行它,因爲我已經改變了這個courceto合併與我的舊來源的一些事情。我可以使用mupdf liblary登錄到pdf文件。但是當我想改變signture的顏色時,我遇到了一些問題。我發現的代碼來設置signture顏色和如何更改mupdf的顏色繪圖?

paint.setStyle(Paint.Style.STROKE); 
        paint.setStrokeWidth(INK_THICKNESS*scale); 
        paint.setColor(INK_COLOR); 
        canvas.drawPath(path, paint); 

改變了顏色形式紅色到黑色(代碼在文件PageView.java https://github.com/muennich/mupdf/blob/master/android/src/com/artifex/mupdfdemo/PageView.java),但是當我點擊按鈕acept我的平局。簽名的顏色回紅色。請給我一些解決方案。感謝任何評論和對我的壞英語感到遺憾....

回答

0

在mupdf/platform/android/jni/mupdf.c中查找函數MuPDFCore_addInkAnnotationInternal。在那裏,你將看到的顏色是硬連接到紅色的線條

color[0] = 1.0; 
color[1] = 0.0; 
color[2] = 0.0; 

如果您只是希望它硬線爲黑色,然後換1.0至0.0。行後

pdf_dict_puts_drop(annot_obj, "F", pdf_new_int(doc, F_Print)); 

如果你希望得到的墨跡註釋的PDF印刷版露面,然後在文件pdf-annot.c功能pdf_create_annot,你應該添加一行:

pdf_dict_puts_drop(annot_obj, "Rect", pdf_new_rect(doc, &rect)); 
+0

感謝評論。我也認爲這一點。現在我有新的問題。你不能幫助我。當我打印我的PDF文件(它包含簽名)我的簽名不見了。如果我將打印格式更改爲jpg,我可以看到並打印文件具有sinature,但我的文件是模糊的。:(。 –

+0

我編輯了我的答案以包含如何確保註釋打印的說明 –

+0

謝謝:D .. so你知道任何修改pdf文件的方法,因爲我的pdf是在我簽名後修改我的簽名,簽名能看到,但是當我打印pdf時,它不見了,我看到它只是一個圖像被附加pdf文件而不是修改。:(。任何solotion? –