2013-10-15 74 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? –