基于WORD文档的防篡改水印系统设计与实现(12)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

基于WORD文档的防篡改水印系统设计与实现(12)


{
j=k*2;
high = digest[k] /16;
low = digest[k] %16;
if (high >=10)
{
num[j]= (unsigned char)(high-10+'A');
}
else
{
num[j]= (unsigned char)(high+'0');
}
if (low >=10)
{
num[j+1]= (unsigned char)(low-10+'A');
}
else
{
num[j+1]= (unsigned char)(low+'0');
}
}

   switch (num[tempm])
  { case '0': wf[i].line=55;break;
    case '1': wf[i].line=1;break;
    case '2': wf[i].line=3;break;
    case '3': wf[i].line=4;break;
    case '4': wf[i].line=6;break;
    case '5': wf[i].line=7;break;
    case '6': wf[i].line=9;break;
    case '7': wf[i].line=10;break;
    case '8': wf[i].line=11;break;
    case '9': wf[i].line=20;break;
    case 'A': wf[i].line=23;break;
    case 'B': wf[i].line=25;break;
    case 'C': wf[i].line=26;break;
    case 'D': wf[i].line=27;break;
    case 'E': wf[i].line=39;break;
    case 'F': wf[i].line=43;break;
  }
  if ((num[tempm+1]>'8') && (num[tempm+2]>'8') && (num[tempm+3]>'8'))
  {wf[i].color=RGB(255,255,255);}
  if ((num[tempm+1]>'8') && (num[tempm+2]>'8') && (num[tempm+3]<='8'))
  {wf[i].color=RGB(255,255,254);}
  if ((num[tempm+1]>'8') && (num[tempm+2]<='8') && (num[tempm+3]>'8'))
  {wf[i].color=RGB(255,254,255);}
  if ((num[tempm+1]>'8') && (num[tempm+2]<='8') && (num[tempm+3]<='8'))
  {wf[i].color=RGB(255,254,254);}
  if ((num[tempm+1]<='8') && (num[tempm+2]>'8') && (num[tempm+3]>'8'))
  {wf[i].color=RGB(254,255,255);}
  if ((num[tempm+1]<='8') && (num[tempm+2]>'8') && (num[tempm+3]<='8'))
  {wf[i].color=RGB(254,255,254);}
  if ((num[tempm+1]<='8') && (num[tempm+2]<='8') && (num[tempm+3]>'8'))
  {wf[i].color=RGB(254,254,255);}
  if ((num[tempm+1]<='8') && (num[tempm+2]<='8') && (num[tempm+3]<='8'))
  {wf[i].color=RGB(254,254,254);}
}
(3) 提取已嵌入水印并检测水印。
   font.AttachDispatch (sel.GetFont());
font.GetUnderlineColor();
 font.GetUnderline();
 
 tempsum=tempsum+m;
   
for (i=m;i>=1;i--)
  {
      sel.MoveLeft(COleVariant((short)1),COleVariant((short)1),COleVariant((short)1));
      

    
      if ((font.GetUnderlineColor()!=wf[i].color) || (font.GetUnderline()!=wf[i].line))
      {     
    tempwrong=m-2*i+1;
    if (tempwrong>0)
    {sel.MoveLeft(COleVariant((short)1),COleVariant((short)(tempwrong)),COleVariant((short)1));
sel.MoveLeft(COleVariant((short)1),COleVariant((short)1),COleVariant((short)0));
sel.MoveLeft(COleVariant((short)1),COleVariant((short)1),COleVariant((short)1));
     fontwrong.AttachDispatch(sel.GetFont());
    fontwrong.SetStrikeThrough(1); (责任编辑:qin)