2014-09-22 22 views
1

在文本的同一區域多個操作系統,文字逐漸模糊Mupdf高亮文本同一地區

這是一個很明顯的錯誤。

我該如何解決?

+0

我有沒有人可以再次顯示的問題?問題 - 圖片 - > bugs.ghostscript.com/attachment.cgi?id=11169誰能幫我看看? – Johns 2014-09-24 02:35:16

回答

0

恐怕你的問題對我沒有多大意義。 「在相同的文字區域中操作」是什麼意思?

也許如果你分享了PDF文件的副本,並解釋你在做什麼,我們可以看看它。

+0

當我選擇要突出顯示的部分文字時,我再次突出顯示同一個地方。 突出顯示的文字將被模糊。 我不知道我說過這會讓你明白。 – Johns 2014-09-22 14:42:28

+0

這是什麼操作系統?您是否使用Artifex下載的標準MuPDF二進制文件,或者您自己構建了它?如果你自己構建它,是使用MuPDF或我們的演示代碼的這個*你的應用程序?您能否將示例PDF文件發佈到公共網址,以便我們可以嘗試重現它。 – KenS 2014-09-22 15:30:05

+0

突出顯示註釋使用透明度,如果您重複應用突出顯示,那麼文本會變得更暗淡,可能這是您的意思? – KenS 2014-09-22 15:32:03

0

我已經「解決」了這個問題,告訴mupdf編寫高亮註釋,以便使用乘法混色渲染它們。它們將會看起來像在文本的「後面」,因爲當你乘上顏色時黑色會保持黑色。

要做到這一點,你可以進入源/ PDF/PDF-annot.c和功能

pdf_annot * 
pdf_create_annot(pdf_document *doc, pdf_page *page, fz_annot_type type) 

if (annot_arr == NULL) 
{ 
    annot_arr = pdf_new_array(doc, 0); 
    pdf_dict_puts_drop(page->me, "Annots", annot_arr); 
} 

添加類似

if (type == FZ_ANNOT_HIGHLIGHT) { 
     //Say that we want this to be renderd "behind" the text, i.e., in multiplicative mode 
    pdf_dict_puts_drop(annot_obj, "BM", pdf_new_name(doc, "Multiply")); 
} 

希望有所幫助。